:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#243b33;background:#f8f7f3;font-synthesis:none;--green:#254f43;--muted:#7c847d;--border:#e5e8df}*{box-sizing:border-box}body{margin:0;display:flex}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}button:focus-visible,a:focus-visible{outline:3px solid #b68b39;outline-offset:3px}button{color:inherit}a{color:inherit}input,select,textarea{min-width:0}h1,h2,p{margin-top:0}.sidebar{width:254px;position:fixed;inset:0 auto 0 0;padding:36px 23px 24px;background:#f0f1e9;border-right:1px solid var(--border);overflow:auto;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-family:Georgia,serif;font-size:31px;letter-spacing:-1.3px;margin-bottom:46px}.brandmark{display:grid;place-items:center;width:46px;height:46px;background:var(--green);color:#f2e6cb;border-radius:15px;font-size:26px;font-style:italic}.brand small{font-family:system-ui;font-size:9px;letter-spacing:2px;display:block;margin-top:4px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:650;color:#7b8579;margin:0 0 16px}.nav{width:100%;border:0;background:none;padding:13px 12px;display:flex;gap:10px;align-items:center;text-align:left;border-radius:8px;font-size:13px;margin-bottom:5px}.nav.active{background:#dee6db;color:var(--green);font-weight:650}.sidebar-section{margin-top:32px}.person-filter,.category-filter{display:flex;align-items:center;gap:11px;width:100%;border:0;background:none;text-align:left;padding:7px;border-radius:7px;font-size:13px}.person-filter.active{background:#e3e8dc;font-weight:650}.avatar{border-radius:50%;height:28px;width:28px;display:inline-grid;place-items:center;font-size:11px;background:#e8dfd1;color:#695a43}.person-filter:nth-child(3) .avatar{background:#e6dce8}.person-filter:nth-child(4) .avatar{background:#dbe6ec}.person-filter:nth-child(5) .avatar{background:#f1e4bf}.person-filter:nth-child(6) .avatar{background:#dedced}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--category);flex-shrink:0}.category-filter.active{background:#e3e8dc;font-weight:600}.sidebar-bottom{margin-top:auto;padding-top:35px;color:#73806f;font-size:12px}.sidebar-bottom small{display:block;font-size:10px;margin-top:12px}.tiny-leaf{font-size:23px;color:#8c9b79}.text-button{border:0;background:none;padding:7px 0;font-size:12px;color:#557461;text-align:left}main{width:calc(100% - 254px);margin-left:254px;padding:42px 40px 20px;max-width:1850px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}header .eyebrow{margin-bottom:9px}h1{font-family:Georgia,serif;font-weight:400;letter-spacing:-1.4px;font-size:44px;margin-bottom:9px}.subtitle{color:var(--muted);font-size:13px;margin:0}.header-actions{display:flex;gap:10px}.button{border:1px solid transparent;padding:12px 17px;border-radius:8px;font-size:12px;font-weight:600;white-space:nowrap}.primary{background:var(--green);color:white}.primary:hover{background:#326453}.secondary{border-color:#d9dfd4;background:#fff}.connection{font-size:11px;color:#75816e;margin-bottom:18px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.connection button{background:none;border:0;color:#315e4c;text-decoration:underline;cursor:pointer}.connection.demo{background:#f3ead4;padding:10px 14px;border-radius:8px;color:#806630}.overview{border:1px solid var(--border);background:#edf1e7;border-radius:13px;padding:22px;display:flex;gap:28px;margin-bottom:27px}.overview-intro{min-width:180px}.overview-intro .eyebrow{display:block;margin-bottom:8px}.overview-intro strong{display:block;font-family:Georgia,serif;font-size:23px;font-weight:400;margin-bottom:12px}.muted{color:#7c8776;font-size:12px;line-height:1.7}#todayCards{display:flex;gap:12px;align-items:stretch;flex:1;overflow:auto}.today-card{background:#ffffffc7;border:1px solid #fff;border-radius:9px;padding:16px;min-width:185px;flex:1;border-top:3px solid var(--category);text-align:left}.today-card .tag{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:var(--category);display:flex;align-items:center;gap:6px;margin-bottom:9px}.today-card strong{display:block;font-size:13px;margin:7px 0}.today-card small{font-size:11px;color:#80857b}.today-card .time{font-size:12px;color:#485c4f}.today-empty{align-self:center;color:#7b8576;font-size:13px;padding:15px}.calendar-panel{background:#fff;border:1px solid var(--border);border-radius:13px;overflow:hidden}.toolbar{padding:24px 24px 18px;display:flex;justify-content:space-between;align-items:center;gap:10px}.month-nav{display:flex;align-items:center;gap:10px}.month-nav h2{font-family:Georgia,serif;font-size:24px;font-weight:400;min-width:170px;text-align:center;margin:0;text-transform:capitalize}.icon-button{border:0;background:transparent;width:30px;height:32px;font-size:24px;border-radius:5px}.icon-button:hover{background:#f0f3eb}.today-button{background:#fff;border:1px solid var(--border);border-radius:6px;padding:6px 11px;margin-left:7px;font-size:11px}.views{display:flex;background:#f3f4ef;padding:3px;border-radius:7px}.views button{background:none;border:0;font-size:11px;padding:7px 13px;border-radius:5px}.views .selected{background:white;box-shadow:0 1px 4px #0000000d;font-weight:650}.filterbar{display:flex;gap:12px;align-items:center;padding:0 26px 18px}.search{display:flex;gap:8px;align-items:center;font-size:20px;color:#8b9488}.search input{border:0;outline:none;font-size:12px;background:none;width:200px}.filterbar select{display:none}#filterCount{margin-left:auto;font-size:11px;color:#8b9488}.weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.weekdays{background:#fafbf8;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.weekdays span{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#7e867a;padding:12px 10px;text-align:right}.day-cell{min-height:128px;border-right:1px solid #eef0e9;border-bottom:1px solid #eef0e9;padding:8px 5px;overflow:hidden}.day-cell:nth-child(7n){border-right:0}.day-cell.outside{background:#fafbf8}.day-number{display:block;border:0;background:none;font-size:11px;margin:0 3px 7px auto;width:25px;height:25px;border-radius:50%;padding:0}.outside .day-number{color:#bac0b3}.is-today .day-number{background:var(--green);color:white}.event-pill{width:100%;border:0;border-left:2px solid var(--category);background:color-mix(in srgb,var(--category) 11%,white);color:var(--category);border-radius:4px;padding:5px 6px;display:block;text-align:left;font-size:10px;line-height:1.4;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-pill:hover{filter:brightness(.96)}.event-pill small{font-size:9px;opacity:.85}.more{font-size:10px;background:none;border:0;color:#788572}.agenda-section{padding:6px 25px 20px}.agenda-day{display:flex;gap:22px;border-top:1px solid var(--border);padding:18px 0}.agenda-date{min-width:65px;max-width:65px;font-size:11px;color:#8b9386}.agenda-date strong{display:block;font-family:Georgia,serif;font-size:29px;font-weight:400;color:#2f4b3c}.agenda-events{flex:1;min-width:0}.agenda-event{width:100%;display:flex;gap:17px;align-items:center;border:0;border-left:3px solid var(--category);background:#f8f9f5;border-radius:5px;padding:13px 15px;margin-bottom:8px;text-align:left}.agenda-event .event-time{font-size:11px;min-width:85px;color:var(--category)}.agenda-event strong{display:block;font-size:13px;margin-bottom:5px}.agenda-event small{font-size:11px;color:#899180}.agenda-person{margin-left:auto;font-size:11px;color:#7a8575}.empty-state{text-align:center;padding:50px 20px 60px;color:#7e8975;font-size:13px}.empty-state strong{display:block;font-family:Georgia,serif;font-weight:400;font-size:26px;color:#385441;margin:12px}.empty-state .button{margin-top:18px}footer{display:flex;justify-content:space-between;font-size:10px;color:#92998b;padding:20px 2px}dialog{border:1px solid var(--border);border-radius:16px;padding:28px;max-width:570px;width:calc(100% - 24px);max-height:90dvh;color:#294233;box-shadow:0 20px 80px #182c2630}dialog::backdrop{background:#1b30295e;backdrop-filter:blur(3px)}.dialog-top{display:flex;justify-content:space-between;gap:12px;margin-bottom:20px}.dialog-top h2{font-family:Georgia,serif;font-weight:400;font-size:27px;margin-bottom:0}.dialog-top .eyebrow{margin-bottom:8px}dialog p{font-size:13px;line-height:1.7}form label{display:flex;flex-direction:column;gap:7px;font-size:12px;margin-bottom:16px;color:#66715f}form input,form select,form textarea{width:100%;padding:10px 11px;background:#fcfcfa;border:1px solid #dce2d6;border-radius:6px;color:#2d4537}input:focus,select:focus,textarea:focus{outline:2px solid #9bb397;outline-offset:1px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.check{flex-direction:row;align-items:center}.check input{width:16px;height:16px;accent-color:var(--green)}.field-help{font-size:11px;color:#87907e;line-height:1.6;margin-top:-3px}.dialog-actions{display:flex;gap:14px;align-items:center;justify-content:flex-end;margin-top:22px;flex-wrap:wrap}.dialog-actions .danger{margin-right:auto;color:#ab4d40;border:0;background:none;font-size:12px}.error{color:#a34638}.notice{padding:12px;background:#f1eddf;border-radius:7px;font-size:12px}.dropzone{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 20px;border:1px dashed #afbf9e;border-radius:9px;background:#f5f7ef;margin:20px 0;color:#5f7654;font-size:25px}.dropzone strong{font-size:14px}.dropzone span{font-size:11px}.dropzone input{max-width:100%;font-size:12px}#imagePreview{max-width:100%;max-height:220px;object-fit:contain;margin-bottom:20px}#importResults .candidate{padding:15px 0;border-top:1px solid var(--border);display:flex;align-items:center;gap:12px;font-size:12px}#importResults .candidate div{flex:1}#importResults small{display:block;color:#88917e;margin-top:5px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:#254f43;color:#fff;box-shadow:0 5px 30px #0002;padding:13px 22px;font-size:13px;border-radius:9px;z-index:20;max-width:90vw}[hidden]{display:none!important}
@media(min-width:1500px){.day-cell{min-height:150px}}
@media(max-width:1150px){.sidebar{width:215px;padding:30px 16px}main{margin-left:215px;width:calc(100% - 215px);padding:30px 23px}h1{font-size:37px}.header-actions{flex-direction:column}.overview{gap:14px}.overview-intro{min-width:150px}.today-card{min-width:165px}.toolbar{padding:20px 15px 15px}.month-nav{gap:3px}.month-nav h2{font-size:21px;min-width:145px}.views button{padding:7px 9px}}
@media(max-width:800px){body{display:block}.sidebar{display:none}main{width:100%;margin:0;padding:25px 16px 10px}header{align-items:flex-start;gap:6px;margin-bottom:18px}header .eyebrow{font-size:8px;letter-spacing:1.3px}h1{font-size:33px;letter-spacing:-1px}.subtitle{font-size:11px;max-width:200px;line-height:1.6}.header-actions{gap:7px}.button{padding:10px 12px;font-size:11px}.overview{padding:16px;gap:12px;display:block;margin-bottom:18px}.overview-intro{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.overview-intro .eyebrow{font-size:8px;margin:0}.overview-intro strong{font-size:18px;margin:0}.overview-intro .muted{display:none}#todayCards{gap:9px}.today-card{min-width:160px;padding:12px}.today-card strong{font-size:12px}.toolbar{flex-wrap:wrap;padding:15px 10px;gap:12px}.month-nav{justify-content:space-between;width:100%}.month-nav h2{flex:1;min-width:0;font-size:23px}.views{width:100%}.views button{flex:1;padding:8px}.filterbar{padding:0 12px 14px;flex-wrap:wrap;gap:9px}.filterbar select{display:block;border:1px solid var(--border);border-radius:5px;background:#fafbf7;color:#66745d;padding:7px;font-size:11px;flex:1}.search{width:100%;border-bottom:1px solid #edf0e6;padding-bottom:7px}.search input{width:100%}#filterCount{display:none}.weekdays span{font-size:8px;padding:10px 4px;text-align:center;letter-spacing:0}.day-cell{min-height:105px;padding:5px 2px}.day-number{font-size:10px;margin:0 auto 5px;width:22px;height:22px}.event-pill{font-size:9px;padding:4px 2px;white-space:normal;max-height:33px;overflow:hidden;line-height:1.3}.event-pill small{display:none}.more{font-size:8px;padding:3px}.agenda-section{padding:0 12px 15px}.agenda-day{gap:9px}.agenda-date{min-width:42px;max-width:42px;font-size:10px}.agenda-date strong{font-size:25px}.agenda-event{padding:12px 9px;gap:10px;flex-wrap:wrap}.agenda-event .event-time{min-width:65px;font-size:10px}.agenda-event strong{font-size:12px}.agenda-person{display:none}footer{font-size:9px;gap:20px;line-height:1.5}dialog{padding:20px;max-height:94dvh}.form-grid{gap:10px}.dialog-actions{gap:12px}.connection{font-size:10px;line-height:1.5}.empty-state{padding:35px 15px}}
