#addModal{position:fixed;inset:0;background:rgba(17,24,39,.45);display:none;place-items:center;z-index:20}#addModal.on{display:grid}
#addModal .box{background:#fff;border-radius:18px;padding:22px 24px;width:min(560px,92vw);box-shadow:0 20px 60px rgba(0,0,0,.25)}
#addModal h3{margin:0 0 4px;font-size:20px;font-weight:800}#addModal .hint{color:var(--mute);font-size:13px;margin-bottom:14px;font-weight:600}
#addModal label{display:block;font-size:12px;font-weight:800;color:var(--mute);margin:12px 0 5px;letter-spacing:.5px;text-transform:uppercase}#addModal .two{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width:640px){#addModal .two{grid-template-columns:1fr}}
#addModal input,#addModal select,#addModal textarea,#addModal .acc-btn{width:100%;font:inherit;font-size:14px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
#addModal textarea{min-height:110px;resize:vertical}
#addModal .acts{display:flex;gap:10px;margin-top:16px;justify-content:flex-end}
#addModal .acts button{font:800 14px 'Plus Jakarta Sans';border-radius:12px;padding:11px 18px;border:0;cursor:pointer}
#addModal .go{background:var(--btn);color:#fff}#addModal .cancel{background:var(--bg);color:var(--ink)}
#addModal .when{display:flex;gap:8px;align-items:center}.when input[type=date],.when input[type=time]{flex:0 0 auto;width:auto}.when select{flex:1}
#addModal .when{display:flex;gap:8px;align-items:center;min-width:0}#addModal .when input,#addModal .when select{width:auto;min-width:0}#addModal .when input[type=date]{flex:0 0 auto}#addModal .when input[type=time]{flex:0 0 auto}#addModal .when select{flex:1 1 120px}
#addModal .when{display:flex;gap:8px;align-items:center;min-width:0}#addModal .when input,#addModal .when select{width:auto;min-width:0}#addModal .when input[type=date],#addModal .when .dpick,#addModal .when input[type=time]{flex:0 0 auto}#addModal .when select{flex:1 1 110px}
#addModal .rrow{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:10px;font-size:13.5px;color:var(--ink)}#addModal .rrow > span{color:var(--mute);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.4px;min-width:92px}#addModal .rrow input[type=number]{width:64px}#addModal .rrow select{width:auto}#addModal .rrow input[type=date],#addModal .rrow .dpick{width:auto}
#addModal .days{display:flex;gap:6px}#addModal .dchip{width:32px;height:32px;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--mute);font:inherit;font-size:12px;font-weight:800;cursor:pointer}#addModal .dchip.on{background:var(--btn);border-color:var(--btn);color:#fff}
#addModal .ends label{display:inline-flex;align-items:center;gap:6px;margin:0;font-size:13.5px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--ink)}#addModal .ends input[type=radio]{width:auto;margin:0}#addModal .ends input[type=date],#addModal .ends .dpick,#addModal .ends input[type=number]{padding:5px 8px;font-size:13px}#addModal .ends .dpick{min-width:128px}
#addModal select,#addModal .when select,#addModal .rrow select{appearance:none;-webkit-appearance:none;font:inherit;font-size:14px;color:var(--ink);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%235a6b85' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;border:1px solid var(--line);border-radius:10px;padding:0 34px 0 12px;height:42px;line-height:normal;box-sizing:border-box;cursor:pointer}#addModal .rrow select{padding:0 32px 0 12px;height:38px;font-size:13.5px}#addModal .rrow input[type=number]{font:inherit;font-size:13.5px;padding:8px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}#addModal .when input[type=date],#addModal .when .dpick,#addModal .when input[type=time]{border-radius:10px}#addModal select:focus,#addModal input:focus,#addModal textarea:focus{outline:none;border-color:var(--p)}#addModal select:focus-visible,#addModal input:focus-visible,#addModal textarea:focus-visible{outline:2px solid var(--p);outline-offset:2px;border-color:var(--p)}
#addModal .drop{border:1.5px dashed #cbd5e1;border-radius:14px;padding:22px 18px;text-align:center;background:var(--bg);margin-top:10px}#addModal .drop.over{border-color:var(--p);background:var(--pl)}
#addModal .drop b{display:block;font-size:15px;color:var(--ink)}#addModal .drop span{display:block;color:var(--mute);font-size:12.5px;font-weight:600;margin:6px auto 12px;max-width:420px;line-height:1.45}
#addModal .drop .pick{font:800 13px 'Plus Jakarta Sans';border:0;border-radius:999px;padding:9px 16px;background:#fff;color:var(--btn);border:1px solid var(--line);cursor:pointer}
#addModal .impst{color:var(--mute);font-size:13px;font-weight:700;margin-top:10px;min-height:0}#addModal .impst:empty{display:none}#addModal .impst.busy::before{content:"";display:inline-block;width:11px;height:11px;border:2px solid var(--line);border-top-color:var(--p);border-radius:50%;margin-right:8px;vertical-align:-1px;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
#addModal .box{max-height:92vh;overflow:auto}#addModal .imp{max-height:40vh;overflow:auto;margin-top:8px}#addModal .imp h4{margin:12px 0 6px;font-size:12px;letter-spacing:.5px;text-transform:uppercase;color:var(--mute)}#addModal .imp h4 small{font-weight:700;text-transform:none;letter-spacing:0;margin-left:6px}
#addModal .imp table{width:100%;border-collapse:collapse;font-size:13px}#addModal .imp td{padding:6px 6px;border-top:1px solid var(--line);vertical-align:top}#addModal .imp tr:first-child td{border-top:0}#addModal .imp td.ck{width:22px}#addModal .imp td.ck input{width:auto;margin:0}
#addModal .imp td small{display:block;color:var(--mute);font-weight:600}#addModal .imp tr.ex td{color:var(--mute)}#addModal .imp .tag{font-size:10px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;border-radius:999px;padding:1px 7px;background:var(--bg);color:var(--mute);white-space:nowrap}
#addModal .imp .tag.ok{background:#dcfce7;color:#166534}#addModal .imp .tag.no{background:#fee2e2;color:#991b1b}
#addModal .fmt{margin-top:10px;font-size:12px;color:var(--mute);font-weight:600}#addModal .fmt summary{cursor:pointer;font-weight:800}#addModal .fmt code{font-size:11.5px;background:var(--bg);border-radius:6px;padding:1px 6px}
#addModal .seg2{display:inline-flex;background:var(--bg);border-radius:999px;padding:3px;margin:6px 0 4px}#addModal .seg2 span{padding:7px 16px;border-radius:999px;font-size:13px;font-weight:800;color:var(--mute);cursor:pointer}#addModal .seg2 span.on{background:#fff;color:var(--p);box-shadow:0 1px 3px rgba(0,0,0,.08)}
#addModal .opt{font-weight:600;text-transform:none;letter-spacing:0;color:var(--mute);opacity:.8}#addModal .err{color:#b91c1c;font-weight:700;font-size:13px;min-height:18px;margin-top:8px}#addModal .err:empty{display:none}
#addModal .chk{display:flex;align-items:center;gap:8px;text-transform:none;letter-spacing:0;font-size:13px;color:var(--ink)}#addModal .chk input{width:auto}
#addModal textarea{min-height:70px}#addModal input[type=color]::-webkit-color-swatch{border:0;border-radius:7px}#addModal input[type=color]::-webkit-color-swatch-wrapper{padding:0}#addModal input[type=color]::-moz-color-swatch{border:0;border-radius:7px}
#osToast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%) translateY(20px);background:#0b1f36;color:#fff;font:700 13px 'Plus Jakarta Sans',system-ui,sans-serif;border-radius:999px;padding:10px 16px;opacity:0;pointer-events:none;transition:.2s;z-index:80}#osToast.on{opacity:1;transform:translateX(-50%)}
