:root{--ink:#173e4c;--muted:#73848a;--teal:#0c6d75;--paper:#f5f6f2;--line:#dce3df;--gold:#eac45a;--navy:#153d4a}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Segoe UI',Arial,sans-serif;font-size:15px}button,input,select,textarea{font:inherit}button{cursor:pointer}button,input,select,textarea{border:1px solid var(--line);border-radius:7px;padding:10px 13px}input,select,textarea{background:white;color:var(--ink);min-width:0}input:focus,select:focus,textarea:focus,button:focus-visible{outline:3px solid #7eb9bd;outline-offset:2px}button{background:white;color:var(--ink);font-weight:600}button:hover{filter:brightness(.96)}.primary{background:var(--teal);border-color:var(--teal);color:white}.dark{background:var(--navy);color:white;border-color:var(--navy)}.ghost{background:transparent}.danger{color:#a33131}.small{padding:6px 10px;font-size:13px}.shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.sidebar{position:fixed;width:240px;height:100vh;background:var(--navy);color:#eef6f3;padding:29px 21px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px}.brand img{width:48px;height:48px;border-radius:50%;object-fit:contain;background:white}.brand strong{font-size:22px;letter-spacing:-.6px}.brand small{display:block;color:#a7c1c7;font-size:11px;letter-spacing:1.3px;text-transform:uppercase;margin-top:4px}.nav-label{color:#92adb5;font-size:10px;letter-spacing:1.6px;margin:35px 12px 12px}.sidebar nav button{display:flex;align-items:center;gap:13px;width:100%;color:#bcd0d4;border:0;background:transparent;text-align:left;padding:13px 15px;margin:4px 0;font-weight:500}.sidebar nav button.active{background:#315764;color:white}.nav-icon{font-size:19px;width:22px;text-align:center}.count{margin-left:auto;background:#ffffff16;font-size:11px;padding:2px 6px;border-radius:4px}.side-bottom{margin-top:auto;padding-top:30px}.partner-logos{display:flex;align-items:center;gap:12px;margin:18px 7px}.partner-logos img{width:55px;height:55px;object-fit:contain;border-radius:50%;background:white}.side-caption{font-size:11px;line-height:1.7;color:#9ab5bc}.profile{border-top:1px solid #ffffff20;margin-top:22px;padding-top:20px;display:flex;align-items:center;gap:10px}.avatar{background:var(--gold);color:var(--navy);font-size:12px;font-weight:700;padding:11px;border-radius:50%}.profile strong{font-size:13px}.profile small{display:block;color:#9ab5bc;font-size:11px}.profile button{color:white;padding:6px;background:transparent;border:0;margin-left:auto}.main{grid-column:2;min-width:0}.topbar{height:78px;border-bottom:1px solid var(--line);padding:0 38px;display:flex;align-items:center;justify-content:space-between;background:#fbfcf9;gap:14px}.breadcrumb{color:var(--muted);font-size:13px}.breadcrumb span{color:var(--ink);margin-left:13px}.top-actions{display:flex;align-items:center;gap:13px}.saved{font-size:12px;color:var(--muted)}.content{padding:34px 38px;max-width:1800px;margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:1.7px;font-size:10px;font-weight:700;color:var(--teal)}h1{font-size:34px;line-height:1.2;letter-spacing:-1px;font-weight:650;margin:9px 0 10px}h2{font-size:21px;letter-spacing:-.4px;margin:0}h3{margin:0 0 10px;font-size:17px}p{color:var(--muted);line-height:1.6}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-heading p{margin:0;font-size:14px}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.badge{font-size:11px;border-radius:5px;padding:5px 8px;background:#e7f1eb;color:#387657;font-weight:600;white-space:nowrap}.badge.yellow{background:#fcf1d1;color:#886b1b}.badge.red{background:#fbe6e2;color:#a0463c}.welcome{display:grid;grid-template-columns:1fr 255px;background:#e8eeea;border:1px solid #d6e2da;border-radius:10px;overflow:hidden;margin-bottom:25px}.welcome-text{padding:27px 30px}.welcome h2{font-size:27px;margin:9px 0}.welcome p{font-size:14px;max-width:650px;margin:0 0 18px;color:#58726e}.welcome-graphic{position:relative;min-height:200px;background:#dce7df;display:flex;justify-content:center;align-items:center}.graphic-grid{display:grid;grid-template-columns:repeat(4,30px);gap:7px;transform:rotate(-13deg)}.graphic-grid i{display:block;width:30px;height:30px;border-radius:4px;background:#afc7b8}.graphic-grid i:nth-child(3n){background:#24666b}.graphic-grid i:nth-child(5n){background:#eac45a}.graphic-caption{position:absolute;bottom:20px;font-size:9px;letter-spacing:2px;color:#4a6f68}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:29px}.stat{background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px}.stat .label{font-size:12px;color:var(--muted)}.stat strong{font-size:32px;display:block;margin:9px 0;font-weight:600;letter-spacing:-1px}.stat small{font-size:11px;color:var(--muted)}.stat .stat-top{display:flex;justify-content:space-between}.stat-icon{color:#739e99;font-size:19px}.panel{background:#fff;border:1px solid var(--line);border-radius:9px;margin-bottom:22px;overflow:hidden}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:22px 24px;border-bottom:1px solid var(--line)}.panel-head p{font-size:12px;margin:5px 0 0}.panel-body{padding:22px 24px}.two-col{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:22px}.step{display:flex;gap:14px;padding:17px 0;border-bottom:1px solid #edf0ed;align-items:center}.step:last-child{border:0}.step-num{background:#edf3ef;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-size:12px;font-weight:600;flex-shrink:0}.step strong{font-size:14px}.step p{font-size:12px;margin:4px 0}.step button{margin-left:auto}.notice{padding:15px 18px;background:#fff7e1;border:1px solid #ecdfb8;border-radius:7px;margin-bottom:18px;font-size:13px;line-height:1.6;color:#7a6328}.notice.good{background:#eaf4ee;color:#32634f;border-color:#cde2d5}.notice.bad{background:#fff0eb;color:#944c3c;border-color:#f2d5ca}.notice p{color:inherit;margin:5px 0}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 20px;border-bottom:1px solid var(--line);flex-wrap:wrap}.search{width:270px;background:#f8faf7}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:10px;text-transform:uppercase;letter-spacing:1px;background:#f9faf7;padding:13px 20px;color:#7a8c8e;font-weight:600}td{padding:17px 20px;border-top:1px solid #e9eeea;font-size:13px}td strong{display:block;font-weight:600}td small{display:block;color:var(--muted);margin-top:3px}td .row-actions{display:flex;gap:6px}.empty{padding:60px 20px;text-align:center;color:var(--muted)}.tabs{display:flex;gap:6px;flex-wrap:wrap}.tabs button{border:0;background:transparent;font-size:13px}.tabs button.active{background:#e5efea;color:var(--teal)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.field.full{grid-column:1/-1}.field small{font-weight:400;color:var(--muted);line-height:1.5}.field textarea{min-height:80px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}dialog{width:min(640px,94vw);max-height:88vh;border:1px solid var(--line);border-radius:12px;padding:28px;color:var(--ink);box-shadow:0 25px 100px #123c4a26}dialog::backdrop{background:#133b4b66;backdrop-filter:blur(3px)}dialog h2{margin-bottom:8px}dialog p{font-size:13px}.close{float:right;border:0;padding:4px 9px;font-size:20px;background:transparent}.calendar{display:grid;min-width:850px}.day-head{padding:16px 8px;text-align:center;border-bottom:1px solid var(--line);font-size:12px;font-weight:600;background:#f9faf7}.time-label{height:86px;padding:10px 12px;font-size:11px;color:var(--muted);border-bottom:1px solid #edf0ed}.day-track{position:relative;background:repeating-linear-gradient(to bottom,transparent,transparent 85px,#e7ece7 85px,#e7ece7 86px);border-left:1px solid #e7ece7}.event{position:absolute;overflow:hidden;border-radius:5px;padding:9px 8px;border-left:3px solid;font-size:11px;cursor:pointer}.event strong{display:block;font-size:12px;margin:4px 0}.event small{display:block;font-size:10px;opacity:.8}.tone0{background:#deefec;border-color:#2c837b;color:#195b58}.tone1{background:#e5ebf8;border-color:#627eac;color:#3a527e}.tone2{background:#f7ecd2;border-color:#c09a40;color:#826423}.tone3{background:#efe4ee;border-color:#a373a4;color:#7e4b80}.tone4{background:#e9efdc;border-color:#879a54;color:#566c30}.tone5{background:#f7e6df;border-color:#b87e64;color:#8a573f}.legend{display:flex;gap:17px;flex-wrap:wrap;padding:16px 23px;font-size:11px;color:var(--muted)}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;background:#2c837b}.option-card{padding:22px;border:1px solid var(--line);background:white;border-radius:8px;display:flex;justify-content:space-between;gap:15px;margin-bottom:12px;align-items:center}.option-card p{font-size:12px;margin:6px 0}.login{display:grid;grid-template-columns:1.1fr 1fr;min-height:100vh}.login-story{background:var(--navy);padding:65px 9%;display:flex;flex-direction:column;justify-content:space-between;color:white}.login-story h1{font-size:54px;max-width:520px;font-weight:500;line-height:1.12;margin:60px 0 23px}.login-story h1 em{font-family:Georgia,serif;color:var(--gold);font-weight:400}.login-story p{color:#a9c1c6;max-width:410px;font-size:16px}.login-story .partner-logos img{width:70px;height:70px}.login-form{display:flex;align-items:center;justify-content:center;padding:45px}.login-box{width:360px}.login-box h2{font-size:32px;margin:10px 0}.login-box .field{margin:20px 0}.login-box button{width:100%;margin-top:8px;padding:13px}.login-footer{font-size:11px;color:var(--muted);margin-top:30px;line-height:1.8}#toast{position:fixed;bottom:25px;right:30px;background:var(--navy);color:white;border-radius:8px;padding:15px 22px;max-width:480px;box-shadow:0 8px 30px #173e4c22;z-index:100;display:none}.switches{display:flex;gap:10px;flex-wrap:wrap}.switches label{font-size:13px;padding:10px 12px;background:#f0f4f0;border-radius:6px}.switches input{accent-color:var(--teal)}.muted{color:var(--muted)}.busy{opacity:.6;pointer-events:none}.import-text{width:100%;min-height:180px;font:12px Consolas,monospace}.preview-table{max-height:230px;overflow:auto;border:1px solid var(--line);margin-top:15px}.check-list{padding:0;list-style:none;font-size:13px}.check-list li{padding:9px 0;border-bottom:1px solid var(--line);line-height:1.5}.progress-track{height:5px;border-radius:8px;background:#e8ede6;margin:15px 0}.progress-track span{display:block;height:5px;background:var(--teal);border-radius:8px}.card-footer{border-top:1px solid var(--line);padding:13px 22px;font-size:11px;color:var(--muted)}@media(min-width:1450px){.content{padding:42px 50px}.welcome-text{padding:32px 35px}}@media(max-width:1050px){.sidebar{width:205px;padding:25px 14px}.shell{grid-template-columns:205px 1fr}.content{padding:25px}.topbar{padding:0 25px}.two-col{grid-template-columns:1fr}.stats{gap:10px}.stat{padding:15px}.welcome{grid-template-columns:1fr 170px}.saved{display:none}}@media(max-width:720px){.shell{display:block}.sidebar{position:relative;width:auto;height:auto;padding:16px}.sidebar .brand img{width:35px;height:35px}.sidebar .brand small,.nav-label,.side-bottom{display:none}.sidebar nav{display:flex;overflow:auto;margin-top:15px}.sidebar nav button{width:auto;white-space:nowrap;padding:9px}.sidebar .count{display:none}.sidebar nav .nav-icon{font-size:15px}.main{width:100%}.content{padding:20px 15px}.topbar{height:auto;min-height:64px;padding:10px 15px}.breadcrumb{font-size:11px}.top-actions{gap:6px}.top-actions button{font-size:11px;padding:8px}.page-heading{align-items:flex-start;flex-direction:column}h1{font-size:29px}.welcome{display:block}.welcome-graphic{display:none}.stats{grid-template-columns:1fr 1fr}.stat strong{font-size:28px}.form-grid{grid-template-columns:1fr}.login{grid-template-columns:1fr}.login-story{padding:30px;min-height:260px}.login-story h1{font-size:34px;margin:24px 0 10px}.login-story p,.login-story .partner-logos{display:none}.login-form{padding:32px 25px}.search{width:100%}.panel-head{padding:18px;flex-wrap:wrap}.option-card{align-items:flex-start;flex-direction:column}}@media print{.sidebar,.topbar,.page-heading .actions,.toolbar,.notice,button{display:none!important}.shell{display:block}.content{padding:0}.main{width:100%}.panel{border:0}.calendar{min-width:0}.event{print-color-adjust:exact}.page-heading{margin:10px 0}.time-label{height:75px}.day-track{background-size:auto 75px}}
