:root{--bg:#f5f5ef;--ink:#172e2b;--muted:#687872;--deep:#102b27;--accent:#b5ce73;--line:#e4e7dc;--card:#fff;--red:#aa533f}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input{font:inherit}h1{font-size:clamp(29px,3.4vw,45px);line-height:1.18;letter-spacing:-1.5px;margin:5px 0 8px;font-weight:700}h1 em{font-weight:500;color:#769155;font-style:normal}h2{font-size:20px;letter-spacing:-.4px;margin:0}h3{font-size:16px;margin:18px 0 8px}.muted{color:var(--muted);margin:0}.tiny{font-size:11px}.layout{min-height:100vh;display:flex}.sidebar{width:254px;background:var(--deep);color:#dbe7da;padding:31px 23px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex-shrink:0}.brand{display:flex;align-items:center;gap:10px;font-weight:850;letter-spacing:1.4px;font-size:18px;color:inherit;line-height:1}.brand-mark{display:grid;place-items:center;width:34px;height:34px;background:var(--accent);color:var(--deep);border-radius:11px;font-size:24px}.brand-sub{display:block;letter-spacing:4px;font-size:8px;margin-top:5px;font-weight:550}.brand-note{font-size:10px;letter-spacing:3px;margin:26px 0 44px;color:#98b0a7}.brand-note span{color:var(--accent)}.sidebar nav{display:flex;flex-direction:column;gap:7px}.nav-link{border-radius:10px;display:flex;gap:12px;align-items:center;padding:12px;color:#ccdcd4;font-size:15px}.nav-link:hover{background:#28433c;color:white}.nav-link>span{font-size:14px}.sidebar-bottom{margin-top:auto;border-top:1px solid #39514b;padding-top:20px;display:flex;gap:14px;flex-direction:column}.sidebar-bottom small{color:#95a9a2;font-size:11px}.mode-test,.mode-live{font-size:12px;font-weight:700;color:#d5e3a9}.mode-live{color:#9de1b0}.logout{border:0;background:transparent;color:#b7c8c0;cursor:pointer;padding:0;text-align:left}.main{width:100%;max-width:1480px;margin:0 auto;padding:24px clamp(22px,3vw,48px) 60px;min-width:0}.topline{display:flex;justify-content:space-between;gap:12px;padding:0 0 25px;border-bottom:1px solid #d9dfd4;letter-spacing:1.8px;color:#86958b;font-weight:700;font-size:9px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:38px 0 29px}.eyebrow{color:#7d9567;letter-spacing:2px;font-size:10px;font-weight:800;margin:0}.btn{border:1px solid transparent;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;padding:12px 17px;cursor:pointer;font-weight:750;white-space:nowrap;font-size:13px}.btn.primary{background:var(--deep);color:#fff}.btn.primary:hover{background:#244a40}.btn.secondary{background:#fff;color:var(--ink);border-color:var(--line)}.btn.danger{color:var(--red);background:#fff;border-color:#e8d1cb}.notice{display:flex;align-items:flex-start;gap:14px;padding:16px 18px;background:#e4ecce;border:1px solid #d2dfb5;border-radius:12px;margin:20px 0 22px;color:#375334}.notice p{font-size:12px;margin:3px 0 0;color:#5a7054}.notice-dot{font-size:18px}.notice.warning{background:#f9eadb;border-color:#f1d4b5;color:#8a5b26}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin:18px 0 23px}.stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px;display:flex;flex-direction:column;gap:4px;min-height:140px}.stat>span{font-size:9px;letter-spacing:1.35px;color:#819188;font-weight:800}.stat strong{font-size:38px;line-height:1.25;font-weight:760;letter-spacing:-1.5px}.stat .stat-text{font-size:20px;letter-spacing:-.5px;margin-top:8px}.stat small{color:#87958e;font-size:11px}.panel{background:var(--card);border:1px solid var(--line);border-radius:14px;margin-top:20px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:22px 24px 19px}.panel-head small{color:#94a19a}.table-scroll{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;min-width:600px}th{font-size:9px;letter-spacing:1.1px;background:#fafbf8;color:#829188;font-weight:800;padding:14px 22px;border-top:1px solid #edf0e8}td{padding:15px 22px;border-top:1px solid #eff1eb;color:#455850;font-size:12px;vertical-align:middle}td strong{color:#1d3430;font-weight:750}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:11px;word-break:break-all;color:#668075}.pill{border-radius:30px;padding:5px 9px;display:inline-block;text-transform:capitalize;font-size:10px;letter-spacing:.3px;font-weight:750;background:#e9edec;color:#6e827a;white-space:nowrap}.pill.active,.pill.sent{background:#e5f3e6;color:#3b8655}.pill.inactive,.pill.denied,.pill.failed{background:#f8eae6;color:#af5a48}.pill.simulated,.pill.skipped{background:#f4efd9;color:#8b7730}.pill.pending{background:#e1edfa;color:#3c6b9c}.text-link{font-weight:750;color:#668e51;white-space:nowrap}.empty{padding:24px;color:#84958a;border-top:1px solid #edf0e8}.empty a{color:#3d7140;text-decoration:underline}.back{display:inline-block;color:#739273;font-weight:700;margin:25px 0 0}.form-panel{padding:24px}.form-stack{display:flex;flex-direction:column;gap:17px}.form-stack label{font-size:12px;font-weight:760;color:#52655b;display:flex;flex-direction:column;gap:7px}.form-stack input:not([type=checkbox]){width:100%;padding:12px 13px;min-height:43px;border:1px solid #d9e1d7;border-radius:9px;outline-color:#88b170;background:#fff;color:var(--ink)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-stack .checkbox-line{flex-direction:row;align-items:center;gap:10px}.checkbox-line input{accent-color:#456849}.hint{font-size:11px;color:#879589;margin:0}.actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.actions form{margin:0}.rule-list{border-top:1px solid var(--line)}.rule{padding:16px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #eef0ec}.rule strong{font-size:16px}.rule-days{color:#829389;font-size:11px;margin-top:3px}.small-danger{background:transparent;color:#a66c60;border:1px solid #eedbd7;border-radius:6px;padding:7px 10px;cursor:pointer}.schedule-form{background:#fafcf7;padding:24px}.schedule-form h3{margin-top:0}.weekday-picker{display:flex;gap:6px;flex-wrap:wrap}.weekday{display:inline-flex!important;position:relative;cursor:pointer}.weekday input{position:absolute;opacity:0}.weekday span{display:inline-block;border:1px solid #dce5d9;background:white;padding:10px 13px;border-radius:8px;color:#718178;font-weight:800}.weekday input:checked+span{background:#345a48;color:white;border-color:#345a48}.weekday input:focus-visible+span{outline:2px solid #a8bc74}.login-wrap{background:var(--deep);min-height:100vh;display:grid;place-items:center;padding:20px}.login-card{background:#fff;padding:clamp(26px,6vw,54px);max-width:510px;width:100%;border-radius:20px}.login-card .brand{color:var(--deep)}.login-card .eyebrow{margin-top:48px}.login-card h1{margin:13px 0 18px}.login-card .form-stack{margin-top:27px}.login-card button{width:100%}.alert{background:#f8e8df;color:#9d513c;border:1px solid #f0cbbf;border-radius:9px;padding:12px;margin-top:15px}@media(max-width:980px){.sidebar{width:206px;padding:24px 14px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.page-head{align-items:flex-start;flex-direction:column}}@media(max-width:650px){.layout{display:block}.sidebar{height:auto;position:static;width:auto;padding:15px 18px}.sidebar nav{flex-direction:row;gap:4px;overflow:auto}.sidebar-bottom,.brand-note{display:none}.sidebar .brand{font-size:14px}.nav-link{padding:8px 9px}.nav-link>span{font-size:11px}.main{padding:15px 14px 45px}.topline{font-size:8px}.topline span:last-child{display:none}.stats{gap:9px}.stat{padding:15px;min-height:110px}.stat strong{font-size:30px}.two-col{grid-template-columns:1fr}.page-head{margin:25px 0}.panel-head{padding:17px}.schedule-form{padding:17px}.weekday span{padding:9px 10px}}
