:root{--bg:#f6f3f5;--ink:#241f22;--muted:#7c7479;--line:#e9e2e6;--accent:#b36e88;--accent-soft:#f3e2e9;--success:#2e7d5b;--warn:#a8741b;--danger:#a33a46;--danger-soft:#fbecee}*{box-sizing:border-box}body,html{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,sans-serif;scroll-behavior:smooth}.shell{max-width:1180px;margin:auto;padding:22px 18px 90px}.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:16px}.brand h1{margin:0;font-size:30px}.muted,.sub{color:var(--muted);font-size:13px}.grid{display:grid;grid-template-columns:repeat(12,1fr);grid-gap:14px;gap:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px}.s3{grid-column:span 3}.s4{grid-column:span 4}.s6{grid-column:span 6}.s8{grid-column:span 8}.full{grid-column:1/-1}.kpi{font-size:28px;font-weight:800;margin-top:6px}.warn{color:var(--warn)}.good{color:var(--success)}.row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.between{justify-content:space-between}.btn{border:0;background:var(--ink);color:#fff;text-decoration:none;padding:10px 14px;border-radius:11px;font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.btn.soft{color:#6e3e50}.btn.danger{background:var(--danger);color:#fff}.btn:disabled{opacity:.6;cursor:not-allowed}.iconBtn{width:38px;height:38px;border-radius:11px;border:1px solid var(--line);background:#fff;color:var(--ink);text-decoration:none;cursor:pointer;font-size:17px;display:inline-flex;align-items:center;justify-content:center}.iconBtn:hover{background:var(--accent-soft)}.editMain{width:44px;height:44px;font-size:20px}.cancelledBadge{display:inline-block;margin-top:8px;padding:6px 10px;border-radius:999px;background:var(--danger-soft);color:var(--danger);font-size:12px;font-weight:800}.form{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.fullrow{grid-column:1/-1}label{display:block;font-size:12px;color:var(--muted);margin-bottom:5px}input,select,textarea{width:100%;padding:11px;border:1px solid #ded5da;border-radius:10px;background:#fff;font:inherit}textarea{min-height:90px;resize:vertical}.notice{background:#fff7e6;padding:12px;border-radius:12px}.successbox{background:#eef8f2;border:1px solid #cfe8d8;padding:12px;border-radius:12px}.months{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:8px;gap:8px}.month{background:#faf8f9;border-radius:12px;padding:12px}.month b{display:block;margin-top:4px}.dashboardLink,.monthLink{display:block;text-decoration:none;color:inherit}.tableWrap{overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}.emptyState{padding:24px;text-align:center;color:var(--muted)}table{width:100%;border-collapse:collapse;min-width:720px}td,th{text-align:right;padding:10px;border-bottom:1px solid var(--line)}.floatingAdd{position:fixed;left:24px;bottom:24px;width:58px;height:58px;border-radius:50%;justify-content:center;background:var(--ink);color:#fff;text-decoration:none;font-size:34px;box-shadow:0 10px 28px #0002;z-index:50}.floatingAdd,.topActions{display:flex;align-items:center}.topActions{gap:9px;direction:ltr}.bellButton,.homeButton,.menuButton{position:relative;width:44px;height:44px;border-radius:13px;border:1px solid var(--line);background:#fff;color:var(--ink);display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-size:21px;cursor:pointer}.bellBadge{position:absolute;right:-6px;top:-7px;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:var(--danger);color:#fff;font-size:11px;font-weight:800;display:flex;align-items:center;justify-content:center;border:2px solid var(--bg)}.drawerBackdrop{position:fixed;inset:0;background:#0005;z-index:100;display:flex;justify-content:flex-start}.drawer{width:min(330px,86vw);height:100%;padding:20px;box-shadow:8px 0 30px #0002;direction:rtl}.drawerHead{display:flex;align-items:center;justify-content:space-between;font-size:20px;padding-bottom:15px;border-bottom:1px solid var(--line)}.drawerClose{border:0;background:transparent;font-size:30px;cursor:pointer}.drawerNav{display:flex;flex-direction:column;padding-top:12px}.drawerNav a{text-decoration:none;color:var(--ink);font-weight:800;padding:15px 8px;border-bottom:1px solid var(--line)}.taskSummary{background:linear-gradient(135deg,#fff,#faf5f7)}.taskStateBtn{width:40px;height:40px;border-radius:12px;border:1px solid #cfe8d8;background:#eef8f2;color:var(--success);font-size:20px;font-weight:900;cursor:pointer}.taskStateDone{background:#f5f2f4;color:var(--muted);border-color:var(--line)}.clientTaskGroup{padding:0;overflow:hidden}.clientTaskHead{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;background:#faf8f9;border-bottom:1px solid var(--line)}.clientTaskHead h3{margin:0 0 3px}.clientTaskItems{padding:0 18px}.clientTaskItem{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px 0;border-bottom:1px solid var(--line)}.clientTaskItem:last-child{border-bottom:0}.taskInfo{min-width:0}.taskDirectAction{flex-wrap:nowrap;flex-shrink:0}.checkField{display:flex;align-items:center;gap:9px;padding:10px 0}.checkField input{width:auto}.compactFilters{padding:14px}.filterSearch{margin-bottom:10px}.filterGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:8px;gap:8px}.filterGrid label{margin:0}.filterGrid label span{display:block;margin-bottom:4px}.filterGrid input,.filterGrid select{padding:9px;font-size:13px}.filterButtons{display:flex;align-items:flex-end;gap:7px}.sortMenu{position:relative}.sortPopover{position:absolute;left:0;top:46px;z-index:40;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 30px #0002;min-width:190px;padding:6px}.homeLayout{display:grid;grid-template-columns:minmax(0,2fr) minmax(280px,1fr);grid-gap:16px;gap:16px;align-items:start}.homeFinance,.homeMain{display:grid;grid-gap:14px;gap:14px}.homeFinance{position:-webkit-sticky;position:sticky;top:16px}.eventSummary,.homeToday{background:linear-gradient(135deg,#fff,#fcf7f9)}.sectionHead{align-items:flex-start;margin-bottom:8px}.homeEvent,.homeTask,.sectionHead{display:flex;justify-content:space-between;gap:12px}.homeEvent,.homeTask{align-items:center;padding:13px 0;border-top:1px solid var(--line)}.homeTaskLink{text-decoration:none;color:inherit;border-radius:8px}.homeTaskLink:hover{background:#fffaf2}.homeTaskCritical{margin:8px 0;padding:14px 12px;border:1px solid #e8b8bd;background:var(--danger-soft);color:var(--danger);border-radius:12px}.homeTaskCritical .muted{color:#8b5b62}.compactActions{flex-wrap:nowrap;flex-shrink:0}.eventQuickGrid,.financeGrid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:8px;gap:8px;margin-top:10px}.eventQuickGrid>div,.financeGrid>div{background:#faf8f9;border-radius:12px;padding:11px}.eventQuickGrid span,.financeGrid span{display:block;color:var(--muted);font-size:12px}.eventNotes{margin-top:14px;padding:13px;border-radius:12px;background:#fffaf2;border:1px solid #f0e3c9}.sourceChoice{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.sourceChoice a{display:flex;flex-direction:column;gap:6px;padding:22px;border:1px solid var(--line);border-radius:16px;text-decoration:none;color:var(--ink);background:#faf8f9}.quickTaskCard{border-color:#ead9b9;background:#fffcf6}.quickHoursForm{display:grid;grid-template-columns:1fr 1fr auto;grid-gap:10px;gap:10px;align-items:flex-end;margin-top:14px}@media(max-width:850px){.s3,.s4,.s6,.s8{grid-column:1/-1}.form{grid-template-columns:1fr}.months{grid-template-columns:repeat(3,1fr)}.homeLayout{grid-template-columns:1fr}.homeFinance{position:static}.eventQuickGrid,.financeGrid{grid-template-columns:1fr 1fr}}@media(max-width:520px){.shell{padding:12px 10px 82px}.header{align-items:flex-start;margin-bottom:14px}.brand h1{font-size:23px}.sub{max-width:165px;font-size:11px}.card{padding:14px;border-radius:15px}.grid{gap:10px}.floatingAdd{left:14px;bottom:14px;width:54px;height:54px}.topActions{gap:5px}.bellButton,.homeButton,.menuButton{width:39px;height:39px}.iconBtn{width:36px;height:36px}.clientTaskHead{padding:13px 14px}.clientTaskItems{padding:0 14px}.clientTaskItem{align-items:flex-start;flex-direction:column;gap:9px;padding:12px 0}.taskDirectAction{width:100%;justify-content:flex-end}.taskDirectAction .btn{min-height:38px;flex:1 1}.filterGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.filterGrid label span{font-size:10px}.filterGrid select{padding:8px 4px;font-size:11px}.compactFilters{padding:9px}.homeEvent,.homeTask{align-items:flex-start}.compactActions{gap:4px}.eventQuickGrid,.financeGrid{grid-template-columns:1fr 1fr}.sourceChoice{grid-template-columns:1fr}.tableWrap{margin:0 -4px;padding-bottom:4px}table{min-width:620px;font-size:12px}td,th{padding:8px 7px;white-space:nowrap}.eventSummary>.row.between{align-items:flex-start}.eventSummary h2{font-size:21px}.btn{padding:9px 11px;font-size:13px}.quickHoursForm{grid-template-columns:1fr 1fr}.quickHoursForm .btn{grid-column:1/-1}}.taskOverdue{margin:7px -10px;padding:14px 10px!important;border:1px solid #e8b8bd!important;border-radius:12px;background:var(--danger-soft)}.taskOverdue .taskInfo>b{color:var(--danger)}.taskOverdue .muted{color:#8b5b62}.taskOverdue .muted:first-letter{font-weight:800}.homeTaskToday{margin:8px 0;padding:14px 12px;border:1px solid #ead9b9;background:#fff7e6;border-radius:12px}.homeTaskToday .muted{color:#8a681f}.homeTaskToday .taskInfo>b{font-weight:900}.taskToday{margin:7px -10px;padding:14px 10px!important;border:1px solid #ead9b9!important;border-radius:12px;background:#fff7e6}.taskToday .taskInfo>b{color:#76571b}.taskToday .muted{color:#8a681f}:root{--bg:#f7f5f3;--card:#fff;--ink:#211e1d;--muted:#746e6b;--line:#e7e1dd;--accent:#a96f63;--accent-soft:#f4eae7;--surface:#fbfaf9;--shadow:0 10px 30px rgba(45,34,31,.055)}body{background:linear-gradient(180deg,#fbfaf9,#f7f5f3 360px);font-family:Inter,Segoe UI,Arial,sans-serif;letter-spacing:-.01em}.header{padding:10px 0 6px}.brandMark{gap:13px;min-width:0}.brandMark,.brandSeal{display:flex;align-items:center}.brandSeal{width:64px;height:64px;border:1px solid #c9988e;box-shadow:inset 0 0 0 3px #fbf3f1;border-radius:50%;justify-content:center;gap:4px;color:var(--accent);font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:600;font-style:italic;flex:0 0 auto;background:#fff}.brandSeal i{font-family:Georgia,serif;font-size:9px;font-style:normal}.brandCopy{min-width:0}.brandName{font-family:Georgia,Times New Roman,serif;font-size:27px;line-height:1.05;color:#1f1b1a;white-space:nowrap;letter-spacing:.01em}.brandTag{font-size:10px;letter-spacing:.5px;color:#8e6259;margin-top:5px;white-space:nowrap;text-transform:uppercase}.card{box-shadow:var(--shadow);border-color:var(--line);border-radius:16px}.btn{background:#262120;border-radius:9px;font-weight:700;box-shadow:none}.btn.soft{background:var(--accent-soft);color:#704b43}.floatingAdd{background:#262120;box-shadow:0 12px 28px rgba(45,34,31,.2)}.bellButton,.homeButton,.iconBtn,.menuButton{background:#fff;border-radius:11px}.navIcon{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.drawer{background:#fff;padding:24px 18px}.drawerHead{color:var(--ink);padding:2px 7px 17px}.drawerHead>div{display:flex;flex-direction:column;gap:3px}.drawerHead span{font-size:11px;font-weight:400}.drawerClose,.drawerHead span{color:var(--muted)}.drawerNav{gap:2px;padding-top:10px}.drawerNav a{gap:12px;padding:11px 10px;min-height:44px;border:0;border-radius:9px;font-size:14px;font-weight:650}.drawerNav a:hover{background:#f7f3f1;color:#754d45}.drawerDivider{height:1px;background:var(--line);margin:8px}.eventSummary,.homeToday,.taskSummary{background:#fff}.clientTaskHead,.eventQuickGrid>div,.financeGrid>div,.month,.sourceChoice a{background:var(--surface)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(169,111,99,.16);border-color:#bd8a80}.pageHeading{margin:4px 0 18px}.pageHeading h1{margin:2px 0 5px;font-size:30px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.7px;color:var(--accent)}.moduleGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:14px;gap:14px}.moduleCard{min-height:150px;padding:22px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);text-decoration:none;color:var(--ink);display:flex;justify-content:space-between;align-items:flex-end;transition:transform .15s ease,border-color .15s ease}.moduleCard:hover{transform:translateY(-2px);border-color:#d7c2bc}.moduleCard h2{margin:0 0 8px;font-size:20px}.moduleCard p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.moduleArrow{font-size:22px;color:var(--accent)}@media(max-width:720px){.moduleGrid{grid-template-columns:1fr}.moduleCard{min-height:112px}.pageHeading h1{font-size:26px}}@media(max-width:520px){.brandMark,.header{gap:8px}.brandSeal{width:46px;height:46px;font-size:12px;gap:3px}.brandSeal i{font-size:7px}.brandName{font-size:20px}.brandTag{font-size:8px;max-width:150px;overflow:hidden;text-overflow:ellipsis}.topActions{flex-shrink:0}.drawer{padding-left:14px;padding-right:14px}}html{-webkit-text-size-adjust:100%}body{min-height:100dvh}button{touch-action:manipulation}.shell{padding:max(22px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(90px,calc(70px + env(safe-area-inset-bottom))) max(18px,env(safe-area-inset-left))}.floatingAdd{left:max(24px,calc(14px + env(safe-area-inset-left)));bottom:max(24px,calc(14px + env(safe-area-inset-bottom)))}.drawer{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:max(20px,env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}.bellButton,.homeButton,.iconBtn,.menuButton,.taskStateBtn{touch-action:manipulation}.drawerNav a{min-height:48px;display:flex;align-items:center}@media(max-width:520px){.shell{padding:max(12px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(82px,calc(68px + env(safe-area-inset-bottom))) max(10px,env(safe-area-inset-left))}.bellButton,.homeButton,.iconBtn,.menuButton,.taskStateBtn{width:44px;height:44px}.btn,button{min-height:44px}.floatingAdd{left:max(14px,calc(10px + env(safe-area-inset-left)));bottom:max(14px,calc(10px + env(safe-area-inset-bottom)))}}