@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap";.dh-shared{min-height:100vh;background:#f6f8fc;color:#1b2644;font-family:Inter,system-ui,sans-serif}.dh-header{display:flex;align-items:center;gap:12px;padding:16px max(20px,calc((100vw - 1100px)/2));background:#fff;border-bottom:1px solid #e5eaf3}.dh-header strong{display:block;font-size:20px}.dh-header small{display:block;color:#71809c;font-size:12px}.dh-mark{background:#1536a3;color:#fff;border-radius:14px;padding:12px}.dh-logout{margin-left:auto;border:1px solid #e1e6f0;background:#fff;border-radius:9px;padding:10px;display:flex;gap:6px;align-items:center}.dh-content{max-width:1100px;padding:28px 20px;margin:auto}.dh-hero{background:linear-gradient(105deg,#1536a3,#536dd0);border-radius:20px;padding:26px;color:#fff;margin-bottom:20px}.dh-hero h1{font-size:28px;margin:0 0 8px}.dh-hero p{margin:0;color:#e6ecff}.dh-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.dh-box{background:#fff;border:1px solid #e5eaf3;border-radius:17px;padding:22px;margin-bottom:18px}.dh-box h2{font-size:19px;margin:0 0 16px}.dh-box p{color:#68768e;line-height:1.6}.dh-box label{display:block;font-size:13px;font-weight:600;margin:12px 0}.dh-box input,.dh-box select,.dh-box textarea{display:block;box-sizing:border-box;margin-top:6px;padding:11px;width:100%;font:inherit;border:1px solid #d6dfee;border-radius:9px;background:#fff;color:#1b2644}.dh-form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.dh-primary,.dh-secondary,.dh-delete{border:0;border-radius:9px;padding:11px 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font:inherit}.dh-primary{color:#fff;background:#1536a3;font-weight:600}.dh-secondary{background:#edf1fa;color:#1536a3}.dh-delete{background:#fff1f2;color:#b52336}.dh-primary:disabled{opacity:.6}.dh-actions{display:flex;gap:10px}.dh-member,.dh-task{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #eef1f7}.dh-dot{display:grid;place-items:center;background:#e7ecfc;color:#1536a3;border-radius:50%;width:34px;height:34px;font-weight:700}.dh-code{margin-top:14px;display:flex;align-items:center;gap:7px;word-break:break-all;background:#f2f5fc;padding:12px;border-radius:10px}.dh-code button{border:0;background:transparent;color:#1536a3;cursor:pointer}.dh-task-header{display:flex;justify-content:space-between;align-items:center}.dh-task-header h2{margin-bottom:3px}.dh-task-header p{margin:0 0 15px}.dh-task-text{min-width:0;flex:1}.dh-task-text strong,.dh-task-text small{display:block}.dh-task-text small{color:#74819a;margin-top:4px}.dh-check{width:30px;height:30px;border:2px solid #9cadcd;border-radius:50%;background:#fff;flex-shrink:0;display:grid;place-items:center}.dh-check.done{background:#1536a3;color:#fff;border-color:#1536a3}.dh-error{background:#fff1f2;color:#a51b31;border-radius:9px;padding:14px;margin-bottom:16px}@media(max-width:680px){.dh-columns{grid-template-columns:1fr}.dh-content{padding:16px 12px}.dh-header{padding:12px}.dh-hero h1{font-size:23px}.dh-box{padding:16px}.dh-task{gap:7px}.dh-task .dh-secondary{padding:7px;font-size:12px}.dh-task-header{gap:10px}}.dh4-app .dh-content{max-width:1120px}.dh4-tabs{display:flex;gap:7px;padding:7px;background:#e9edf8;border-radius:14px;margin-bottom:18px}.dh4-tabs button{flex:1;border:0;background:transparent;padding:12px 8px;border-radius:10px;display:flex;gap:8px;align-items:center;justify-content:center;color:#3e4a71;font-weight:600;cursor:pointer}.dh4-tabs button.selected{background:#fff;color:#1536a3;box-shadow:0 3px 9px #1536a31c}.dh4-calendar-top{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.dh4-calendar-top p{margin-top:-7px;font-size:13px}.dh4-view-switch{display:flex;gap:3px;background:#edf1fa;padding:4px;border-radius:10px}.dh4-view-switch button{border:0;padding:8px 10px;background:transparent;border-radius:7px;cursor:pointer;color:#5b6887}.dh4-view-switch button.selected{background:#fff;color:#1536a3;font-weight:700}.dh4-period{display:flex;align-items:center;gap:12px;justify-content:center;text-transform:capitalize;margin:12px 0 18px}.dh4-period>button:not(.dh-secondary){background:#edf1fa;color:#1536a3;border:0;border-radius:9px;display:grid;place-items:center;width:34px;height:34px;cursor:pointer}.dh4-period strong{min-width:160px;text-align:center}.dh4-filter{display:flex;justify-content:flex-end;margin-bottom:12px}.dh4-filter label{margin:0!important;display:flex!important;align-items:center;gap:8px}.dh4-filter select{width:auto!important;margin:0!important;padding:8px!important}.dh4-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.dh4-day-head{text-align:center;font-size:12px;color:#71809c;padding:8px 0}.dh4-day{min-height:68px;background:#fafbfe;border:1px solid #e8eef7;border-radius:10px;padding:8px 4px;text-align:left;cursor:pointer;color:#263458;display:flex;flex-direction:column;align-items:flex-start;gap:5px}.dh4-day>span{font-size:13px;font-weight:700;border-radius:100px;padding:2px 5px}.dh4-day.outside{opacity:.34}.dh4-day.today>span{background:#1536a3;color:#fff}.dh4-day.selected{outline:2px solid #1536a3;background:#edf2ff}.dh4-day small{font-size:10px;color:#697b9a}.dh4-dots{display:flex;gap:3px;flex-wrap:wrap}.dh4-dots i{width:7px;height:7px;border-radius:50%;background:#1536a3}.dh4-dots i.done{background:#49a480}.dh4-day-list{border-top:1px solid #e8eef7;margin-top:20px;padding-top:6px}.dh4-day-list h3{text-transform:capitalize;font-size:16px}.dh4-event{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid #edf0f6}.dh4-event-body{flex:1;min-width:0}.dh4-event-body strong,.dh4-event-body small{display:block}.dh4-event-body small{color:#72809a;margin-top:4px}.dh4-event.is-done strong{text-decoration:line-through;color:#8290a9}.dh4-text-button{display:flex;gap:5px;align-items:center;padding:7px;background:transparent;color:#1536a3;border:0;cursor:pointer}.dh4-task-row{display:flex;gap:10px;align-items:center;padding:13px 0;border-bottom:1px solid #e8eef7}.dh4-task-meta{flex:1;min-width:0}.dh4-task-meta strong,.dh4-task-meta small{display:block}.dh4-task-meta small{color:#72809a;margin-top:5px}.dh4-checkbox{display:flex!important;gap:11px;align-items:flex-start;padding:14px;border:1px solid #e6ecf5;border-radius:12px}.dh4-checkbox input{width:auto!important;margin-top:4px!important}.dh4-checkbox strong,.dh4-checkbox small{display:block}.dh4-checkbox small{font-weight:400;color:#6c7b95;margin-top:4px}.dh4-hint{font-size:12px;color:#7a89a5}.dh4-notice{margin-bottom:16px;background:#e7f7ef;border:1px solid #c2e9d3;color:#246d4c;border-radius:10px;padding:12px}.dh4-button-row{display:flex;gap:9px;flex-wrap:wrap}.dh4-footer{display:flex;justify-content:space-between;gap:12px;align-items:center;color:#8a95ae;font-size:12px}.dh4-app .dh-box h2 svg,.dh4-app .dh-box p svg{vertical-align:middle;margin-right:5px}@media(max-width:600px){.dh4-period{gap:6px;flex-wrap:wrap}.dh4-period strong{min-width:120px;font-size:14px}.dh4-tabs button{font-size:12px;gap:4px;padding:11px 4px}.dh4-calendar-top{flex-direction:column}.dh4-day{min-height:54px;padding:5px 3px;gap:4px}.dh4-day small{display:none}.dh4-grid{gap:3px}.dh4-day-head{font-size:10px}.dh4-event{gap:7px}.dh4-task-row .dh-secondary{padding:7px;font-size:11px}.dh4-button-row button{flex:1}.dh4-footer{flex-direction:column;align-items:flex-start}}.auth-wrap{min-height:100dvh;background:linear-gradient(145deg,#e8eeff,#f8faff 60%,#dce5ff);display:flex;align-items:center;justify-content:center;padding:24px;font-family:DM Sans,sans-serif}.auth-card{max-width:420px;width:100%;background:#fff;border:1px solid #dce5ff;border-radius:24px;box-shadow:0 22px 70px #1536a31a;padding:32px}.auth-symbol{width:55px;height:55px;background:#1536a3;color:#fff;border-radius:17px;display:grid;place-items:center;font-size:42px}.auth-card h1{font-size:28px;margin:12px 0 0;color:#1536a3}.auth-subtitle{color:#64739b;margin:4px 0 30px;font-size:13px}.auth-card h2{font-size:20px;margin:0 0 22px;color:#1e2d54}.auth-card form{display:grid;gap:15px}.auth-card label{display:grid;gap:7px;color:#40557e;font-weight:700;font-size:12px}.auth-card input{border:1px solid #cdd9f2;border-radius:10px;padding:13px;font-size:15px}.auth-card input:focus{outline:2px solid #9bb2f4}.auth-main{margin-top:6px;background:#1536a3;color:#fff;border:0;border-radius:11px;padding:14px;font-weight:700}.auth-main:disabled{opacity:.65}.auth-message{background:#eff3ff;border-radius:10px;padding:12px;font-size:12px;line-height:1.5}.auth-links{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:18px}.auth-links button{border:0;background:none;color:#1536a3;font-size:12px;font-weight:700;padding:4px 0}.auth-disclaimer{margin:24px 0 0;font-size:11px;line-height:1.5;color:#8894ae}.auth-session{position:relative;z-index:11;display:flex;justify-content:space-between;align-items:center;gap:10px;background:#e8eeff;color:#1536a3;padding:8px 18px;font:600 12px DM Sans,sans-serif}.auth-session button{border:1px solid #1536a3;background:#fff;color:#1536a3;border-radius:8px;padding:8px;font-weight:700}@media(max-width:600px){.auth-session{font-size:10px;flex-wrap:wrap}.auth-card{padding:25px}}:root{font-family:DM Sans,system-ui,sans-serif;color:#1e2d54;background:#f8faff;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default}.layout{display:flex;min-height:100vh}.sidebar{width:250px;background:#fff;border-right:1px solid #ecebe7;padding:29px 18px;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;flex-shrink:0}.brand{display:flex;align-items:center;gap:11px;padding:3px 10px 42px}.brand-icon{width:44px;height:44px;background:#1536a3;color:#fff;display:grid;place-items:center;border-radius:14px}.brand b{font:800 22px Manrope,sans-serif;letter-spacing:-1px}.brand small{display:block;font-size:11px;color:#8c9891;margin-top:1px}.side-label{color:#a4ada7;font-size:10px;font-weight:700;letter-spacing:1.5px;padding:0 18px 17px}.sidebar nav{display:grid;gap:6px}.nav-link{display:flex;align-items:center;gap:13px;text-align:left;padding:14px 18px;border:none;background:transparent;border-radius:11px;color:#6d8078;font-size:13px;font-weight:700}.nav-link:hover{background:#f6f7f3}.nav-link.selected{background:#e8eeff;color:#1536a3}.side-bottom{margin-top:auto;color:#7584a5;font-size:11px;padding:14px 12px;display:flex;align-items:center;gap:8px}.status-dot{width:8px;height:8px;background:#7ab996;border-radius:50%}.main{min-width:0;width:100%;max-width:1510px;margin:0 auto;padding:0 48px}.topbar{height:81px;display:flex;justify-content:space-between;align-items:center}.breadcrumbs{font-size:12px;color:#849189}.breadcrumbs span{padding:0 11px;color:#c2cbc3}.breadcrumbs b{color:#2445aa}.avatar{width:36px;height:36px;background:#f0ddca;color:#825438;border:0;border-radius:50%;font-weight:800}.hero{display:flex;justify-content:space-between;min-height:256px;position:relative;overflow:hidden;border-radius:21px;background:#e8eeff;padding:34px 42px}.hero-copy{z-index:1}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.6px;color:#4668b5;display:inline-flex;align-items:center;gap:7px}.hero h1{font:800 clamp(25px,3vw,35px)/1.31 Manrope,sans-serif;letter-spacing:-1.2px;margin:15px 0 11px}.hero h1 em{font-style:normal;color:#2049c1}.hero p{font-size:13px;color:#64739b;margin:0 0 21px}.primary{display:inline-flex;gap:9px;align-items:center;justify-content:center;background:#1536a3;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-size:12px;font-weight:700}.primary:hover{background:#0d277e}.hero-art{position:absolute;right:8%;bottom:-28px;width:235px;height:210px;border-radius:48% 48% 0 0;background:#ccdbff;display:grid;place-items:center}.art-house{font-size:250px;line-height:1;color:#577bd2;transform:translateY(-5px);font-family:serif}.art-sun{position:absolute;top:-18px;right:30px;font-size:56px;color:#e4ab65}.art-spark{position:absolute;top:24px;left:-35px;color:#7597e5;font-size:48px}.section-heading{display:flex;justify-content:space-between;align-items:center;margin:35px 0 16px}.section-heading h2,.page-heading h1{font:800 22px Manrope,sans-serif;letter-spacing:-.6px;margin:0 0 5px}.section-heading p,.page-heading p{margin:0;color:#96a19b;font-size:12px}.date-pill{background:#fff;border:1px solid #edece7;border-radius:20px;padding:9px 13px;color:#768b7f;font-size:11px;text-transform:capitalize}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat-card{background:#fff;border:1px solid #eeedea;border-radius:15px;min-height:125px;padding:17px 20px;display:flex;flex-direction:column;align-items:flex-start}.stat-icon{border-radius:10px;padding:9px;display:inline-flex;margin-bottom:6px}.peach{background:#fcf1e7;color:#b77c45}.green{background:#ebf1ff;color:#5274c8}.lilac{background:#e9e8ff;color:#7361bc}.stat-card strong{font:800 25px Manrope,sans-serif;line-height:1}.stat-card>span:last-child{color:#87988b;font-size:11px;margin-top:5px}.panels{display:grid;grid-template-columns:1fr 1fr;gap:17px;margin-top:22px}.panel{border-radius:16px;background:#fff;border:1px solid #efeeeb;padding:20px;min-width:0}.panel-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.panel h3{margin:0 0 5px;font:800 15px Manrope,sans-serif}.panel-heading p{color:#a0aaa3;font-size:11px;margin:0}.count{background:#e8eeff;color:#1536a3;font-size:11px;font-weight:700;padding:5px 9px;border-radius:7px}.task{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid #f2f2ef}.check-button{height:22px;width:22px;flex-shrink:0;border-radius:7px;border:1.5px solid #bdccef;background:#fff;color:#fff;display:grid;place-items:center}.check-button:not(:disabled):hover{background:#dce6ff}.check-button:disabled{background:#5279d6}.task-body{min-width:0;flex:1}.task-body strong{display:block;font-size:12px;font-weight:700}.task-meta{display:flex;align-items:center;gap:6px;flex-wrap:wrap;color:#9ca9a0;font-size:10px;margin-top:5px}.icon-button{border:0;background:transparent;color:#98a89d;display:grid;place-items:center;border-radius:9px;padding:8px}.icon-button:hover{background:#f3f5f1;color:#1536a3}.text-button{border:0;background:none;color:#2049c1;font-weight:700;font-size:11px;margin-top:20px;padding:4px 0}.empty{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:9px;min-height:180px;color:#a0b4a3;font-size:12px;text-align:center}.empty b{color:#517762}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin:45px 0 26px}.page-heading h1{font-size:31px;margin:9px 0}.wide{width:100%;margin-bottom:25px}.filters{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:13px}.chip{border:1px solid #dfe7fb;background:#fff;color:#667cad;border-radius:20px;padding:9px 13px;font-size:11px;font-weight:700}.selected-chip{background:#e2eaff;border-color:#e2eaff;color:#1536a3}.group-title{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#1536a3;background:#f3f6ff;border-radius:8px;padding:11px;margin:18px 0 4px}.date-group:first-child .group-title{margin-top:0}.field{display:flex;flex-direction:column;gap:7px;font-size:11px;font-weight:700;color:#4b628e;margin:13px 0}.field input,.field select,.field textarea{width:100%;border:1px solid #e2e9e2;border-radius:9px;padding:12px;font-size:13px;color:#263b61;background:#fff;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#476bda}.participation{display:flex;align-items:center;gap:11px;padding:12px 0;border-bottom:1px solid #eee}.participation span{flex:1;font-size:13px}.mini-avatar{background:#eaf0ff;color:#3154a1;padding:9px 13px;border-radius:50%;font-weight:700}.tip{display:flex;gap:8px;color:#89958a;background:#f8f6f0;padding:12px;border-radius:10px;font-size:11px;line-height:1.7;margin-top:20px}.tip svg{flex-shrink:0}.history{margin-top:19px}.history-line{display:flex;gap:12px;align-items:center;padding:12px 0;border-bottom:1px solid #f1f0ed;font-size:12px}.history-line svg{color:#3158be}.history-line span{flex:1}.history-line small{color:#9daa9e}.muted{color:#9daa9e;font-size:12px}.danger-link{border:0;background:none;color:#aa6559;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:700;padding:12px 0;margin-top:12px}footer{text-align:center;color:#a6afa8;font-size:11px;padding:34px}footer span{color:#c89d87}.mobile-nav{display:none}.modal-overlay{position:fixed;z-index:20;top:0;right:0;bottom:0;left:0;background:#14221c99;display:grid;place-items:center;padding:16px}.modal{width:100%;max-width:550px;max-height:94vh;overflow:auto;background:#fff;border-radius:20px;padding:25px;box-shadow:0 22px 90px #101a1633}.modal-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}.modal-heading h2{margin:8px 0 0;font:800 23px Manrope,sans-serif}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.modal-actions{display:flex;align-items:center;gap:10px;margin-top:25px}.flex-spacer{flex:1}.secondary{background:#f2f4f1;color:#5f7868;border:0;border-radius:10px;padding:12px 18px;font-size:12px;font-weight:700}.toast{position:fixed;right:24px;bottom:24px;z-index:30;background:#1536a3;color:#fff;padding:12px 20px;border-radius:11px;font-size:12px;display:flex;align-items:center;gap:9px;animation:vanish 2.5s forwards}@keyframes vanish{0%,80%{opacity:1}to{opacity:0}}@media(max-width:1100px){.main{padding:0 24px}.hero-art{right:1%;opacity:.65}.sidebar{width:225px}}@media(max-width:800px){.sidebar{display:none}.main{padding:0 16px 60px}.topbar{height:63px}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;background:#fff;z-index:10;justify-content:space-around;border-top:1px solid #e8e8e4;padding:11px 8px max(11px,env(safe-area-inset-bottom))}.mobile-nav button{border:0;background:transparent;color:#8794b0;display:flex;flex-direction:column;align-items:center;gap:5px;font-size:10px;padding:2px 12px}.mobile-nav button.active{color:#1536a3}.hero{min-height:240px;padding:26px}.hero-art{right:-15%;opacity:.32}.hero h1{font-size:26px}.stats{gap:9px}.stat-card{padding:14px 11px}.panels{grid-template-columns:1fr}.date-pill{display:none}.page-heading{margin:25px 0 20px}.page-heading h1{font-size:25px}.page-heading .primary{font-size:0;gap:0;padding:12px}.page-heading .primary svg{width:20px}.modal{padding:19px}.form-grid{gap:10px}}@media(max-width:420px){.hero h1{font-size:23px}.hero{padding:22px}.stat-card strong{font-size:23px}.stat-card>span:last-child{font-size:10px}.form-grid{grid-template-columns:1fr}.modal-actions{flex-wrap:wrap}}
