:root{--ink:#1d1b2f;--muted:#777389;--line:#e8e5ef;--paper:#fff;--canvas:#f6f4f8;--violet:#7655d6;--violet-dark:#5134ad;--violet-soft:#eee9ff;--mint:#50c8a7;--mint-soft:#e0f8f1;--coral:#ff806e;--coral-soft:#ffebe7;--yellow:#f2c94c;--yellow-soft:#fff5cf;--blue:#5c9ded;--blue-soft:#e5f1ff;--shadow:0 20px 55px #271c4e14}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:var(--canvas);margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}button,select{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}input,select,textarea{color:var(--ink)}.app-shell{min-height:100vh}.sidebar{z-index:30;color:#fff;background:#211b37;flex-direction:column;width:260px;padding:26px 18px 20px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 26px;display:flex}.brand-mark{color:#211b37;letter-spacing:-1px;background:linear-gradient(135deg,#ffe08a,#ff9f86);border-radius:14px;flex:none;place-items:center;width:42px;height:42px;font-weight:900;display:grid;box-shadow:0 8px 20px #ffa86c33}.brand-mark.large{border-radius:18px;width:54px;height:54px;font-size:20px}.brand strong,.brand span{display:block}.brand strong{font-size:17px}.brand span{color:#a9a2c1;letter-spacing:.08em;text-transform:uppercase;margin-top:2px;font-size:11px}.sidebar nav{gap:6px;display:grid}.sidebar nav button{color:#bdb7d0;text-align:left;background:0 0;border:0;border-radius:12px;align-items:center;gap:12px;width:100%;padding:11px 13px;transition:all .18s;display:flex}.sidebar nav button:hover{color:#fff;background:#ffffff0f}.sidebar nav button.active{color:#fff;background:linear-gradient(100deg,#7e5be1e0,#7e5be173);box-shadow:inset 0 0 0 1px #ffffff14}.sidebar-bottom{margin-top:auto}.role-card{background:#ffffff0f;border-radius:13px;align-items:flex-start;gap:10px;margin-bottom:8px;padding:13px;display:flex}.role-card svg{color:#f5ce67}.role-card strong,.role-card span{display:block}.role-card strong{color:#fff;text-overflow:ellipsis;white-space:nowrap;max-width:170px;font-size:13px;overflow:hidden}.role-card span{color:#a9a2c1;margin-top:3px;font-size:10px;line-height:1.35}.logout-button{color:#aaa4bc;background:0 0;border:0;align-items:center;gap:10px;width:100%;padding:10px 13px;display:flex}.logout-button:hover{color:#fff}.main-area{min-height:100vh;margin-left:260px}.topbar{border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffc7;justify-content:space-between;align-items:center;gap:30px;min-height:126px;padding:24px 38px;display:flex}.topbar h1{letter-spacing:-.035em;margin:4px 0;font-size:clamp(24px,3vw,34px)}.topbar p{color:var(--muted);margin:0;font-size:13px}.eyebrow{letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:var(--violet)!important;font-size:10px!important}.eyebrow.light{color:#ffffffb3!important}.topbar-user{border:1px solid var(--line);background:#fff;border-radius:14px;align-items:center;gap:10px;min-width:180px;padding:8px 12px;display:flex}.topbar-user>span{color:#fff;background:var(--violet);border-radius:12px;place-items:center;width:36px;height:36px;font-size:12px;font-weight:800;display:grid}.topbar-user strong,.topbar-user small{display:block}.topbar-user strong{text-overflow:ellipsis;white-space:nowrap;max-width:150px;font-size:12px;overflow:hidden}.topbar-user small{color:var(--muted);margin-top:2px;font-size:10px}.mobile-menu,.menu-backdrop{display:none}.content{padding:30px 38px 60px}.page-stack{gap:22px;display:grid}.hero-grid{grid-template-columns:minmax(0,2.2fr) minmax(210px,.8fr);gap:18px;display:grid}.hero-card{color:#fff;min-height:210px;box-shadow:var(--shadow);background:linear-gradient(130deg,#6543c2 0%,#7a59dd 52%,#bc6dd1 120%);border-radius:23px;justify-content:space-between;align-items:flex-end;gap:30px;padding:30px;display:flex;position:relative;overflow:hidden}.hero-card:before,.hero-card:after{content:"";border:1px solid #ffffff2e;border-radius:50%;position:absolute}.hero-card:before{width:260px;height:260px;top:-150px;right:-50px}.hero-card:after{width:170px;height:170px;top:-100px;right:100px}.hero-card>*{z-index:1;position:relative}.hero-card h2{letter-spacing:-.03em;max-width:650px;margin:7px 0 10px;font-size:30px;line-height:1.05}.hero-card p:not(.eyebrow){color:#ffffffb8;max-width:650px;margin:0;font-size:13px;line-height:1.55}.pulse-card{box-shadow:var(--shadow);background:#fff;border:1px solid #ece7f7;border-radius:23px;flex-direction:column;justify-content:center;padding:26px;display:flex}.pulse-icon{width:46px;height:46px;color:var(--coral);background:var(--coral-soft);border-radius:15px;place-items:center;margin-bottom:20px;display:grid}.pulse-card>span{color:var(--muted);font-size:12px}.pulse-card strong{letter-spacing:-.05em;margin:5px 0 1px;font-size:44px;line-height:1}.pulse-card small{color:var(--muted);font-size:11px}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric-card{border:1px solid var(--line);background:#fff;border-radius:18px;min-width:0;padding:21px}.metric-icon{border-radius:12px;place-items:center;width:39px;height:39px;margin-bottom:17px;display:grid}.metric-icon svg{width:19px}.metric-icon.violet,.agenda-date.violet,.event-chip.violet,.event-marker.violet{color:var(--violet);background:var(--violet-soft)}.metric-icon.mint,.agenda-date.mint,.event-chip.mint,.event-marker.mint{color:#22896f;background:var(--mint-soft)}.metric-icon.coral,.agenda-date.coral,.event-chip.coral,.event-marker.coral{color:#d45243;background:var(--coral-soft)}.metric-icon.yellow,.agenda-date.yellow,.event-chip.yellow,.event-marker.yellow{color:#9b7610;background:var(--yellow-soft)}.metric-icon.blue,.agenda-date.blue,.event-chip.blue,.event-marker.blue{color:#2874c4;background:var(--blue-soft)}.metric-card>span,.metric-card>small{color:var(--muted);display:block}.metric-card>span{font-size:11px}.metric-card>strong{letter-spacing:-.04em;text-overflow:ellipsis;white-space:nowrap;margin:6px 0 3px;font-size:clamp(20px,2vw,28px);display:block;overflow:hidden}.metric-card>small{font-size:10px}.two-column{grid-template-columns:1.1fr .9fr;gap:18px;display:grid}.panel{border:1px solid var(--line);background:#fff;border-radius:19px;padding:22px}.panel-title{justify-content:space-between;align-items:center;gap:16px;margin-bottom:18px;display:flex}.panel-title>div{align-items:center;gap:9px;display:flex}.panel-title svg{width:19px;color:var(--violet)}.panel-title h3{margin:0;font-size:15px}.text-button{color:var(--violet);background:0 0;border:0;padding:4px 0;font-size:11px;font-weight:700}.agenda-list,.task-mini-list{gap:4px;display:grid}.agenda-item{border-radius:12px;grid-template-columns:45px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px;display:grid}.agenda-item:hover{background:var(--canvas)}.agenda-date{text-align:center;border-radius:11px;place-content:center;width:42px;height:42px;display:grid}.agenda-date strong,.agenda-date span{line-height:1;display:block}.agenda-date strong{font-size:16px}.agenda-date span{text-transform:uppercase;margin-top:3px;font-size:8px}.agenda-item>div:nth-child(2) strong,.agenda-item>div:nth-child(2) span{display:block}.agenda-item>div:nth-child(2) strong{font-size:12px}.agenda-item>div:nth-child(2) span{color:var(--muted);margin-top:4px;font-size:10px}.task-mini-list>div{border-bottom:1px solid #f0edf4;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 3px;display:grid}.task-mini-list>div:last-child{border-bottom:0}.task-mini-list strong,.task-mini-list span{display:block}.task-mini-list strong{font-size:12px}.task-mini-list span{color:var(--muted);margin-top:3px;font-size:9px}.task-mini-list small{color:var(--muted);font-size:9px}.priority-dot{background:var(--blue);border-radius:50%;width:7px;height:7px}.priority-dot.срочный,.priority-dot.высокий{background:var(--coral)}.priority-dot.средний{background:var(--yellow)}.overdue{font-weight:700;color:#e15649!important}.toolbar{justify-content:space-between;align-items:center;gap:16px;min-height:48px;display:flex}.toolbar-actions,.filters,.calendar-controls{align-items:center;gap:9px;display:flex}.toolbar select,.filters select,.inline-label select,.upcoming-item select{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:41px;padding:0 36px 0 12px}.search-box{border:1px solid var(--line);background:#fff;border-radius:12px;align-items:center;gap:9px;min-width:min(360px,100%);padding:0 13px;display:flex}.search-box svg{color:var(--muted)}.search-box input{background:0 0;border:0;outline:0;width:100%;height:43px}.primary,.secondary,.light-button,.icon-button{border:0;justify-content:center;align-items:center;gap:8px;transition:all .18s;display:inline-flex}.primary{color:#fff;background:var(--violet);border-radius:12px;min-height:42px;padding:0 17px;font-size:12px;font-weight:750;box-shadow:0 8px 20px #6042b92e}.primary.compact{min-height:37px;padding:0 13px;text-decoration:none}.primary:hover{background:var(--violet-dark);transform:translateY(-1px)}.secondary{border:1px solid var(--line);background:#fff;border-radius:12px;min-height:42px;padding:0 16px;font-size:12px;font-weight:700}.secondary:hover,.icon-button:hover{background:var(--violet-soft);border-color:#cfc6e4}.secondary.compact{min-height:37px;padding:0 12px}.light-button{min-height:42px;color:var(--violet-dark);white-space:nowrap;background:#fff;border-radius:12px;padding:0 17px;font-size:12px;font-weight:800}.light-button:hover{transform:translateY(-1px);box-shadow:0 10px 20px #23184426}.full{width:100%}.icon-button{border:1px solid var(--line);background:#fff;border-radius:11px;flex:none;width:38px;height:38px}.inline-label{color:var(--muted);align-items:center;gap:10px;font-size:12px;display:flex}.client-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.client-card{border:1px solid var(--line);background:#fff;border-radius:18px;min-width:0;padding:20px;transition:all .18s}.client-card:hover{box-shadow:var(--shadow);border-color:#d9d0ee;transform:translateY(-2px)}.client-card-head{grid-template-columns:43px minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.client-avatar{width:43px;height:43px;color:var(--violet-dark);background:var(--violet-soft);border-radius:13px;place-items:center;font-size:12px;font-weight:900;display:grid}.client-card h3{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:14px;overflow:hidden}.client-card-head>div:nth-child(2) span{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:9px;display:block;overflow:hidden}.client-contact{background:var(--canvas);border-radius:11px;gap:4px;min-height:50px;margin:17px 0;padding:12px;display:grid}.client-contact span:first-child{font-size:11px;font-weight:700}.client-contact span:last-child{color:var(--muted);font-size:10px}.client-legal{color:var(--muted);gap:3px;margin:-8px 0 14px;font-size:8px;line-height:1.4;display:grid}.budget-pair{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:16px;display:grid}.budget-pair>div{border:1px solid var(--line);border-radius:11px;min-width:0;padding:11px}.budget-pair span,.budget-pair strong{display:block}.budget-pair span{color:var(--muted);font-size:8px}.budget-pair strong{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:13px;overflow:hidden}.budget-pair.budget-quad{grid-template-columns:1fr 1fr}.client-footer{border-top:1px solid var(--line);align-items:center;gap:12px;padding-top:14px;display:flex}.client-footer>span{color:var(--muted);align-items:center;gap:5px;font-size:9px;display:flex}.client-footer .text-button{margin-left:auto}.status-badge{color:#5a556b;white-space:nowrap;background:#eeecf2;border-radius:99px;align-items:center;min-height:22px;padding:0 8px;font-size:8px;font-weight:800;display:inline-flex}.status-активный,.status-проведено,.status-владелец{color:#1c8067;background:var(--mint-soft)}.status-переговоры,.status-запланировано,.status-аккаунт-менеджер{color:#6240bb;background:var(--violet-soft)}.status-на-паузе,.status-в-работе{color:#9a7100;background:var(--yellow-soft)}.status-архив,.status-отменено{color:#7b7686;background:#efedf2}.status-исполнитель{color:#2774c2;background:var(--blue-soft)}.empty-state{text-align:center;background:#ffffff9e;border:1px dashed #d7d0e4;border-radius:22px;flex-direction:column;justify-content:center;align-items:center;min-height:440px;padding:40px 20px;display:flex}.empty-state>div{width:72px;height:72px;color:var(--violet);background:var(--violet-soft);border-radius:22px;place-items:center;display:grid}.empty-state h2{margin:18px 0 8px;font-size:20px}.empty-state p{max-width:540px;color:var(--muted);margin:0 0 20px;font-size:12px;line-height:1.6}.empty-compact{min-height:150px;color:var(--muted);justify-content:center;align-items:center;gap:9px;font-size:11px;display:flex}.empty-compact svg{color:var(--mint)}.calculator-layout{grid-template-columns:minmax(0,1fr) 310px;align-items:start;gap:18px;display:grid}.services-panel{padding:0;overflow:hidden}.services-panel .panel-title{padding:20px 22px 0}.service-table{overflow-x:auto}.service-row{border-top:1px solid var(--line);grid-template-columns:minmax(280px,1fr) 85px 130px 130px;align-items:center;gap:12px;min-width:720px;min-height:68px;padding:9px 20px;display:grid}.service-row.selected{background:#faf8ff}.service-header{min-height:36px;color:var(--muted);background:var(--canvas);letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:800}.service-name{align-items:center;gap:11px;display:flex}.service-name>span{flex:1;min-width:0}.service-name .icon-ghost{flex:none}.service-name input{width:17px;height:17px;accent-color:var(--violet)}.service-name strong,.service-name small{display:block}.service-name strong{font-size:11px}.service-name small{color:var(--muted);margin-top:3px;font-size:9px}.number-input,.money-input{border:1px solid var(--line);background:#fff;border-radius:9px;width:100%;height:36px;padding:0 9px;font-size:11px}.number-input:disabled,.money-input:disabled{color:#aaa5b4;background:#f2f0f4}.cost-value{font-size:11px;font-weight:750}.estimate-card{color:#fff;box-shadow:var(--shadow);background:#261f3e;border-radius:20px;padding:24px;position:sticky;top:20px}.estimate-card h3{margin:6px 0 25px;font-size:21px}.estimate-line,.estimate-grand{border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.estimate-line span,.estimate-grand span{color:#aaa3bd;font-size:10px}.estimate-line strong,.estimate-grand strong{font-size:12px}.estimate-line.ad-line{padding:7px 0}.estimate-line.ad-line span,.estimate-line.ad-line strong{font-size:9px}.estimate-total{padding:20px 0}.estimate-total span,.estimate-total strong,.estimate-total small{display:block}.estimate-total span{color:#aaa3bd;font-size:10px}.estimate-total strong{color:#72e0c1;letter-spacing:-.04em;margin:5px 0 2px;font-size:26px}.estimate-total small{color:#aaa3bd;font-size:9px}.estimate-grand{border-top:1px solid #ffffff17;margin-bottom:18px;padding:14px 0}.estimate-grand strong{color:#f3cf68;font-size:15px}.calendar-toolbar strong{text-transform:capitalize;margin-left:8px;font-size:15px}.google-calendar-card{background:linear-gradient(120deg,#fff,#f8f6fc);border:1px solid #ded9e8;border-radius:18px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:16px;padding:18px 20px;display:grid}.google-calendar-card.connected{background:linear-gradient(120deg,#fff,#f0fbf7);border-color:#bfe8dc}.google-calendar-icon{width:48px;height:48px;color:var(--violet);background:var(--violet-soft);border-radius:15px;place-items:center;display:grid}.google-calendar-card.connected .google-calendar-icon{color:#258168;background:var(--mint-soft)}.google-calendar-copy strong,.google-calendar-copy span,.google-calendar-copy small{display:block}.google-calendar-copy strong{font-size:13px}.google-calendar-copy span{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.45}.google-calendar-copy small{color:#258168;margin-top:5px;font-size:8px}.google-calendar-copy .google-calendar-error{color:#c54f42}.google-calendar-actions{justify-content:flex-end;align-items:center;gap:12px;display:flex}.google-calendar-actions .danger-text{color:#c54f42;align-items:center;gap:5px;display:inline-flex}.integration-awaiting{color:#896a09;background:var(--yellow-soft);border-radius:9px;padding:7px 10px;font-size:9px;font-weight:800}.calendar-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;display:grid}.calendar-card{border:1px solid var(--line);background:#fff;border-radius:18px;overflow:hidden}.weekdays{background:#f5f3f7;grid-template-columns:repeat(7,1fr);display:grid}.weekdays span{color:var(--muted);border-right:1px solid var(--line);text-align:right;text-transform:uppercase;padding:11px;font-size:8px;font-weight:800}.calendar-grid{grid-template-columns:repeat(7,minmax(90px,1fr));display:grid}.calendar-day{border-top:1px solid var(--line);border-right:1px solid var(--line);background:#fff;min-height:112px;padding:8px}.calendar-day:nth-child(7n){border-right:0}.calendar-day.muted{background:#fbfafc}.calendar-day.muted .day-number{color:#c6c1ce}.day-number{width:23px;height:23px;color:var(--muted);border-radius:8px;place-items:center;margin-left:auto;font-size:9px;font-weight:700;display:grid}.calendar-day.today .day-number{color:#fff;background:var(--violet)}.day-events{gap:4px;margin-top:4px;display:grid}.event-chip{text-overflow:ellipsis;white-space:nowrap;border-radius:6px;min-width:0;padding:5px 6px;font-size:8px;font-weight:700;overflow:hidden}.event-chip span{opacity:.7;margin-right:4px}.day-events>small{color:var(--muted);font-size:8px}.upcoming-panel{padding:18px}.upcoming-list{gap:16px;display:grid}.upcoming-item{grid-template-columns:4px minmax(0,1fr);gap:10px;display:grid}.event-marker{border-radius:99px;width:4px;height:100%;min-height:76px}.upcoming-item span,.upcoming-item strong,.upcoming-item small{display:block}.upcoming-item span{color:var(--violet);font-size:8px;font-weight:800}.upcoming-item strong{margin:4px 0;font-size:11px}.upcoming-item small{color:var(--muted);font-size:9px;line-height:1.35}.upcoming-item select{border-radius:8px;width:100%;min-height:29px;margin-top:7px;padding-left:8px;font-size:9px}.event-sync-row{align-items:center;min-height:20px;margin-top:5px;display:flex}.event-sync-row a,.event-sync-row span,.event-sync-row button{color:var(--muted);align-items:center;gap:4px;font-size:8px;font-weight:750;text-decoration:none;display:inline-flex}.event-sync-row a,.event-sync-row .sync-ok{color:#258168}.event-sync-row button{color:var(--violet)}.kanban{grid-template-columns:repeat(6,minmax(250px,1fr));gap:12px;padding-bottom:12px;display:grid;overflow-x:auto}.kanban-column{border:1px solid var(--line);background:#efedf2;border-radius:17px;min-height:540px;padding:12px}.kanban-head{align-items:center;gap:8px;min-height:34px;padding:0 3px 10px;display:flex}.kanban-head strong{font-size:10px}.kanban-head small{min-width:21px;height:21px;color:var(--muted);background:#fff;border-radius:99px;place-items:center;margin-left:auto;font-size:8px;display:grid}.stage-dot{background:#9d96a8;border-radius:50%;width:7px;height:7px}.stage-1{background:var(--blue)}.stage-2{background:var(--yellow)}.stage-3{background:var(--violet)}.stage-4{background:var(--coral)}.stage-5{background:var(--mint)}.kanban-cards{align-content:start;gap:9px;display:grid}.task-card{background:#fff;border:1px solid #e6e2ea;border-radius:13px;padding:13px;box-shadow:0 5px 14px #251b440a}.task-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.task-card-top>small{color:var(--muted);font-size:8px}.priority-badge{color:#2874c4;background:var(--blue-soft);text-transform:uppercase;border-radius:99px;align-items:center;min-height:19px;padding:0 7px;font-size:7px;font-weight:850;display:inline-flex}.priority-badge.срочный,.priority-badge.высокий{color:#c34738;background:var(--coral-soft)}.priority-badge.средний{color:#936d00;background:var(--yellow-soft)}.priority-badge.низкий{color:#347967;background:var(--mint-soft)}.task-card h3{margin:11px 0 5px;font-size:12px;line-height:1.35}.task-card>p{color:var(--violet);margin:0 0 10px;font-size:9px;font-weight:700}.task-description{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:10px;font-size:8px;line-height:1.45;display:-webkit-box;overflow:hidden}.assignee{border-top:1px solid var(--line);align-items:center;gap:7px;padding:9px 0;display:flex}.assignee>span{width:26px;height:26px;color:var(--violet-dark);background:var(--violet-soft);border-radius:9px;place-items:center;font-size:9px;font-weight:850;display:grid}.assignee strong,.assignee small{display:block}.assignee strong{font-size:9px}.assignee small{color:var(--muted);margin-top:2px;font-size:7px}.stage-select{border:1px solid var(--line);background:var(--canvas);border-radius:8px;width:100%;height:31px;padding:0 7px;font-size:8px}.column-empty{color:#a29ca9;border:1px dashed #d5d0da;border-radius:11px;place-items:center;min-height:80px;font-size:9px;display:grid}.access-summary{color:var(--muted);align-items:center;gap:9px;font-size:11px;display:flex}.access-summary svg{color:var(--mint)}.users-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.user-card{border:1px solid var(--line);background:#fff;border-radius:16px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;padding:18px;display:grid}.user-card.inactive{opacity:.58}.user-avatar{width:48px;height:48px;color:var(--violet-dark);background:var(--violet-soft);border-radius:15px;place-items:center;font-size:12px;font-weight:900;display:grid}.user-main h3{margin:0;font-size:13px}.user-main>span{color:var(--muted);margin:3px 0 8px;font-size:9px;display:block}.user-main>div{align-items:center;gap:8px;display:flex}.user-main small{color:var(--muted);font-size:8px}.user-access{justify-items:end;gap:5px;display:grid}.active-user,.inactive-user{font-size:8px;font-weight:800}.active-user{color:#258168}.inactive-user{color:#b04d43}.access-matrix{margin-top:4px}.matrix-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.matrix-grid>div{background:var(--canvas);border-radius:13px;gap:7px;padding:16px;display:grid}.matrix-grid strong{margin-bottom:3px;font-size:11px}.matrix-grid span{color:var(--muted);padding-left:14px;font-size:9px;position:relative}.matrix-grid span:before{content:"";background:var(--mint);border-radius:50%;width:5px;height:5px;position:absolute;top:5px;left:0}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#1d182f8f;place-items:center;padding:22px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:22px;width:min(720px,100%);max-height:calc(100vh - 44px);overflow:auto;box-shadow:0 30px 90px #150f2d47}.modal-head{z-index:2;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff5;justify-content:space-between;gap:20px;padding:22px 24px 17px;display:flex;position:sticky;top:0}.modal-head h2{margin:0;font-size:19px}.modal-head p{color:var(--muted);margin:4px 0 0;font-size:10px}.form-grid{grid-template-columns:1fr 1fr;gap:15px;padding:22px 24px 25px;display:grid}.field{align-content:start;gap:7px;display:grid}.field.wide{grid-column:1/-1}.field>span{color:#5f5a6c;font-size:9px;font-weight:750}.field input,.field select,.field textarea{border:1px solid var(--line);background:#fff;border-radius:10px;outline:none;width:100%;min-height:42px;padding:9px 11px;font-size:11px;transition:all .15s}.field textarea{resize:vertical;line-height:1.45}.field input:focus,.field select:focus,.field textarea:focus{box-shadow:0 0 0 3px var(--violet-soft);border-color:#9d87dc}.form-actions{grid-column:1/-1;justify-content:flex-end;padding-top:4px;display:flex}.form-section-title{color:var(--violet);border-top:1px solid var(--line);grid-column:1/-1;padding:12px 0 2px;font-size:9px;font-weight:800}.form-help{color:var(--muted);background:var(--canvas);border-radius:10px;grid-column:1/-1;padding:10px 12px;font-size:9px;line-height:1.5}.project-team-picker{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.project-team-picker label{border:1px solid var(--line);background:var(--canvas);cursor:pointer;border-radius:10px;align-items:center;gap:9px;padding:10px 11px;display:flex}.project-team-picker input{accent-color:var(--violet)}.project-team-picker span,.project-team-picker strong,.project-team-picker small{min-width:0;display:block}.project-team-picker strong{font-size:10px}.project-team-picker small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:8px;overflow:hidden}.login-screen{background:#fff;grid-template-columns:minmax(0,1.25fr) minmax(380px,.75fr);min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#211a3a 0%,#4f329c 55%,#9b5ac2 100%);flex-direction:column;justify-content:space-between;min-height:100vh;padding:42px 55px;display:flex;position:relative;overflow:hidden}.login-brand{z-index:2;align-items:center;gap:13px;font-size:13px;font-weight:750;display:flex;position:relative}.login-copy{z-index:2;max-width:700px;margin:auto 0;position:relative}.login-copy h1{letter-spacing:-.055em;margin:9px 0 20px;font-size:clamp(43px,5vw,78px);line-height:.95}.login-copy>p:last-child{color:#ffffffa8;max-width:550px;font-size:15px;line-height:1.6}.login-orbits span{border:1px solid #ffffff1f;border-radius:50%;position:absolute}.login-orbits span:first-child{width:520px;height:520px;top:-180px;right:-190px}.login-orbits span:nth-child(2){width:350px;height:350px;top:-60px;right:-70px}.login-orbits span:nth-child(3){background:radial-gradient(circle,#facb6338,#0000 67%);width:210px;height:210px;top:80px;right:70px}.login-panel{place-items:center;padding:35px;display:grid}.login-panel form,.mfa-card{width:min(380px,100%)}.login-icon{width:52px;height:52px;color:var(--violet);background:var(--violet-soft);border-radius:16px;place-items:center;display:grid}.login-panel h2{letter-spacing:-.04em;margin:20px 0 7px;font-size:29px}.login-panel form>p,.mfa-card>p{color:var(--muted);margin:0 0 22px;font-size:11px;line-height:1.55}.login-panel .field{margin-bottom:14px}.login-panel .primary{margin-top:8px}.mfa-qr{border:10px solid #fff;border-radius:18px;width:220px;height:220px;margin:0 auto 18px;display:block;box-shadow:0 12px 35px #271c4e1f}.manual-key{background:var(--canvas);text-align:center;border-radius:11px;gap:6px;margin:0 0 16px;padding:12px;display:grid}.manual-key span{color:var(--muted);font-size:9px}.manual-key code{overflow-wrap:anywhere;color:var(--violet-dark);letter-spacing:.08em;font-size:12px;font-weight:800}.login-back{width:100%;margin-top:12px}.recovery-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:18px;display:grid}.recovery-grid code{border:1px solid var(--line);background:var(--canvas);text-align:center;border-radius:9px;padding:10px 8px;font-size:10px;font-weight:800}.boot-screen{min-height:100vh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;font-size:11px;display:flex}.boot-logo{color:#fff;background:var(--violet);border-radius:18px;place-items:center;width:55px;height:55px;font-weight:900;animation:1.3s ease-in-out infinite breathe;display:grid}@keyframes breathe{50%{opacity:.78;transform:scale(1.07)}}.toast{z-index:200;color:#fff;background:#257c68;border-radius:13px;align-items:center;gap:9px;max-width:390px;padding:13px 16px;font-size:11px;font-weight:700;display:flex;position:fixed;bottom:24px;right:24px;box-shadow:0 15px 45px #16362e40}.toast.error{background:#c75145}.card-actions,.catalog-actions{align-items:center;gap:5px;margin-left:auto;display:flex}.icon-ghost{width:29px;height:29px;color:var(--violet);border:1px solid var(--line);background:#fff;border-radius:9px;place-items:center;display:grid}.icon-ghost:hover{background:var(--violet-soft);border-color:#c7bce2}.icon-ghost.danger{color:#c95044}.icon-ghost.danger:hover{background:var(--coral-soft);border-color:#f0b9b1}.calculator-note{color:var(--muted);border-top:1px solid var(--line);background:#faf9fb;padding:10px 20px;font-size:9px;line-height:1.5}.calculator-workspace{min-width:0}.service-row{grid-template-columns:minmax(250px,1fr) 80px 115px 140px 120px;min-width:850px}.estimate-hint{color:#aaa3bd;margin:0 0 14px;font-size:9px;line-height:1.45}.estimate-total strong.negative{color:#ff9a8d}.catalog-panel{padding:22px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.catalog-item{border:1px solid var(--line);background:var(--canvas);border-radius:13px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:14px;display:flex}.catalog-item>div:first-child{min-width:0}.catalog-item>div:first-child span,.catalog-item>div:first-child strong,.catalog-item>div:first-child small{display:block}.catalog-item>div:first-child span{color:var(--violet);text-transform:uppercase;font-size:8px;font-weight:800}.catalog-item>div:first-child strong{text-overflow:ellipsis;white-space:nowrap;margin:4px 0;font-size:11px;overflow:hidden}.catalog-item>div:first-child small{color:var(--muted);font-size:8px}.catalog-actions>span{color:var(--muted);white-space:nowrap;margin-right:4px;font-size:8px}.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.project-card{border:1px solid var(--line);background:#fff;border-radius:17px;min-width:0;padding:19px}.project-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.project-head>div{min-width:0}.project-head span{color:var(--violet);font-size:8px;font-weight:800}.project-head h3{text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-size:14px;overflow:hidden}.project-period{color:var(--muted);align-items:center;gap:6px;margin:15px 0;font-size:9px;display:flex}.project-team{color:var(--violet);align-items:flex-start;gap:7px;margin:-5px 0 14px;display:flex}.project-team>div{flex-wrap:wrap;gap:5px;display:flex}.project-team span{background:var(--violet-soft);border-radius:99px;padding:4px 7px;font-size:8px;font-weight:750}.project-team span.project-team-empty{color:var(--muted);background:var(--canvas)}.project-plan,.project-actual{grid-template-columns:1fr 1fr;gap:8px;display:grid}.project-actual{margin-top:10px}.project-plan>div,.project-actual>div{background:var(--canvas);border-radius:10px;min-width:0;padding:10px}.project-plan span,.project-plan strong,.project-actual span,.project-actual strong{display:block}.project-plan span,.project-actual span{color:var(--muted);font-size:8px}.project-plan strong,.project-actual strong{text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:12px;overflow:hidden}.project-ad-budgets{background:var(--yellow-soft);border-radius:10px;gap:5px;margin-top:10px;padding:10px;display:grid}.project-ad-budgets span{color:#775e19;justify-content:space-between;gap:10px;font-size:8px;display:flex}.project-ad-budgets strong{font-size:9px}.progress-line{background:#ece9f0;border-radius:99px;height:5px;margin:15px 0;overflow:hidden}.progress-line span{border-radius:inherit;background:linear-gradient(90deg, var(--violet), var(--mint));height:100%;display:block}.project-footer{border-top:1px solid var(--line);align-items:center;gap:10px;min-height:38px;margin-top:14px;padding-top:12px;display:flex}.project-footer>span{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:8px;overflow:hidden}.positive-text{color:#218069!important}.negative-text{color:#ca5145!important}.finance-panel{padding:0;overflow:hidden}.finance-panel .panel-title{padding:20px 22px 0}.finance-table{overflow-x:auto}.finance-row{border-top:1px solid var(--line);grid-template-columns:85px minmax(190px,1fr) 135px 155px 190px 120px 70px;align-items:center;gap:12px;min-width:1120px;min-height:58px;padding:8px 20px;font-size:9px;display:grid}.finance-row>div:nth-child(2) strong,.finance-row>div:nth-child(2) small,.finance-row>div:nth-child(4) strong,.finance-row>div:nth-child(4) small{display:block}.finance-row>div:nth-child(2) strong,.finance-row>div:nth-child(4) strong{font-size:10px}.finance-row>div:nth-child(2) small,.finance-row>div:nth-child(4) small{color:var(--muted);margin-top:3px;font-size:8px}.finance-header{min-height:36px;color:var(--muted);background:var(--canvas);text-transform:uppercase;font-size:8px;font-weight:800}.finance-type{border-radius:99px;width:max-content;padding:5px 8px;font-size:8px;font-weight:800}.finance-type.income{color:#218069;background:var(--mint-soft)}.finance-type.expense{color:#ca5145;background:var(--coral-soft)}.finance-type.advertising{color:#86670c;background:var(--yellow-soft)}.analytics-filter{border:1px solid var(--line);background:#fff;border-radius:15px;flex-wrap:wrap;align-items:center;gap:10px;padding:13px;display:flex}.period-presets{background:var(--canvas);border-radius:10px;flex-wrap:wrap;align-items:center;gap:4px;padding:3px;display:flex}.period-presets button{min-height:32px;color:var(--muted);background:0 0;border:0;border-radius:8px;padding:0 10px;font-size:9px;font-weight:750}.period-presets button:hover{color:var(--violet);background:#fff}.analytics-filter label{color:var(--muted);align-items:center;gap:6px;font-size:8px;font-weight:750;display:flex}.analytics-filter input,.analytics-filter select{border:1px solid var(--line);background:#fff;border-radius:10px;min-height:38px;padding:0 10px;font-size:10px}.analytics-filter select{min-width:210px;margin-left:auto}.analytics-grid{grid-template-columns:1.25fr .75fr;gap:18px;display:grid}.ad-budget-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.ad-budget-grid article{background:var(--yellow-soft);border:1px solid #eadcaa;border-radius:15px;padding:16px 18px}.ad-budget-grid span,.ad-budget-grid strong,.ad-budget-grid small{display:block}.ad-budget-grid span{color:#7e651c;font-size:9px;font-weight:800}.ad-budget-grid strong{letter-spacing:-.03em;margin:7px 0 3px;font-size:20px}.ad-budget-grid small{color:#967e3a;font-size:8px}.chart-panel,.category-panel{min-height:340px}.bar-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:12px;height:220px;padding:15px 8px 0;display:flex}.bar-group{flex-direction:column;flex:1;justify-content:flex-end;min-width:45px;height:100%;display:flex}.bars{justify-content:center;align-items:flex-end;gap:4px;height:calc(100% - 25px);display:flex}.bars span{border-radius:6px 6px 2px 2px;width:min(20px,40%);min-height:4px}.income-bar{background:linear-gradient(#6ee0c1,#3fae91)}.expense-bar{background:linear-gradient(#ff9c8f,#e46859)}.bar-group small{height:25px;color:var(--muted);text-align:center;white-space:nowrap;padding-top:7px;font-size:7px;display:block}.chart-legend{justify-content:center;gap:18px;padding-top:13px;display:flex}.chart-legend span{color:var(--muted);align-items:center;gap:6px;font-size:8px;display:flex}.chart-legend i{border-radius:2px;width:7px;height:7px;display:block}.income-dot{background:var(--mint)}.expense-dot{background:var(--coral)}.category-list{gap:15px;padding-top:8px;display:grid}.category-list>div>div:first-child{justify-content:space-between;gap:12px;margin-bottom:6px;display:flex}.category-list span,.category-list strong{font-size:9px}.category-track{background:#eeebf1;border-radius:99px;height:7px;overflow:hidden}.category-track span{border-radius:inherit;background:linear-gradient(90deg, var(--coral), #ffb090);height:100%;display:block}.project-analytics{padding:0;overflow:hidden}.project-analytics .panel-title{padding:20px 22px 0}.project-analysis-table{overflow-x:auto}.project-analysis-row{border-top:1px solid var(--line);grid-template-columns:minmax(210px,1.4fr) repeat(7,minmax(105px,1fr));align-items:center;gap:12px;min-width:1180px;min-height:58px;padding:8px 20px;font-size:9px;display:grid}.project-analysis-row>div strong,.project-analysis-row>div small{display:block}.project-analysis-row>div strong{font-size:10px}.project-analysis-row>div small{color:var(--muted);margin-top:3px;font-size:8px}.analysis-header{min-height:36px;color:var(--muted);background:var(--canvas);text-transform:uppercase;font-size:8px;font-weight:800}.payroll-actual{grid-column:1/-1}.payroll-filter select{min-width:180px;margin-left:0}.payroll-filter .period-presets+label{margin-left:auto}.payroll-summary-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.payroll-panel{padding:0;overflow:hidden}.payroll-panel .panel-title{padding:20px 22px 0}.payroll-table,.payroll-detail-table{overflow-x:auto}.payroll-row,.payroll-detail-row{border-top:1px solid var(--line);grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(90px,.7fr));align-items:center;gap:12px;min-width:620px;min-height:58px;padding:8px 20px;font-size:9px;display:grid}.payroll-detail-row{grid-template-columns:minmax(190px,1fr) minmax(230px,1.2fr) 100px 130px;min-width:780px}.payroll-row>div strong,.payroll-row>div small,.payroll-detail-row>div strong,.payroll-detail-row>div small{display:block}.payroll-row>div strong,.payroll-detail-row>div strong{font-size:10px}.payroll-row>div small,.payroll-detail-row>div small{color:var(--muted);margin-top:3px;font-size:8px}.payroll-row>strong,.payroll-detail-row>strong{color:var(--violet);font-size:11px}.payroll-header{min-height:36px;color:var(--muted);background:var(--canvas);text-transform:uppercase;font-size:8px;font-weight:800}.employee-focus{padding:18px 20px}.employee-focus span,.employee-focus small{color:var(--muted);font-size:9px}.employee-focus h3{margin:6px 0;font-size:18px}@media (max-width:1180px){.metrics-grid,.client-grid{grid-template-columns:repeat(2,1fr)}.calendar-layout{grid-template-columns:1fr}.upcoming-panel{position:static}.calendar-grid{overflow-x:auto}}@media (max-width:900px){.sidebar{transition:transform .2s;transform:translate(-105%)}.sidebar.open{transform:translate(0)}.main-area{margin-left:0}.mobile-menu{border:1px solid var(--line);background:#fff;border-radius:12px;flex:none;place-items:center;width:40px;height:40px;display:grid}.menu-backdrop{z-index:20;background:#1b162b6b;border:0;display:block;position:fixed;inset:0}.topbar{justify-content:flex-start;padding:20px 24px}.topbar-user{margin-left:auto}.content{padding:24px}.google-calendar-card{grid-template-columns:48px minmax(0,1fr)}.google-calendar-actions{grid-column:1/-1;justify-content:flex-start}.hero-grid,.two-column,.calculator-layout{grid-template-columns:1fr}.estimate-card{position:static}.users-grid,.login-screen{grid-template-columns:1fr}.login-visual{min-height:43vh;padding:30px}.login-copy h1{font-size:44px}.login-panel{min-height:57vh}}@media (max-width:640px){.topbar{min-height:100px;padding:15px}.topbar>div:nth-child(2)>p:last-child,.topbar-user>div{display:none}.topbar-user{background:0 0;border:0;min-width:auto;padding:5px}.content{padding:16px 12px 50px}.hero-card{flex-direction:column;justify-content:flex-end;align-items:flex-start;min-height:260px;padding:24px}.hero-card h2{font-size:26px}.metrics-grid,.client-grid{grid-template-columns:1fr}.toolbar,.calculator-toolbar,.calendar-toolbar{flex-direction:column;align-items:stretch}.toolbar-actions,.filters{grid-template-columns:1fr;display:grid}.toolbar select,.toolbar .primary,.toolbar .secondary{width:100%}.google-calendar-card{grid-template-columns:1fr;padding:16px}.google-calendar-actions{grid-template-columns:1fr;display:grid}.google-calendar-actions .primary,.google-calendar-actions .secondary{width:100%}.calendar-controls{flex-wrap:wrap}.calendar-controls strong{width:100%;margin:6px 0 0}.calendar-card{overflow-x:auto}.weekdays,.calendar-grid{min-width:700px}.matrix-grid{grid-template-columns:1fr}.user-card{grid-template-columns:45px minmax(0,1fr)}.user-access{border-top:1px solid var(--line);grid-column:1/-1;justify-items:start;padding-top:10px}.form-grid{grid-template-columns:1fr;padding:18px}.field.wide,.form-actions{grid-column:auto}.modal-backdrop{padding:8px}.modal{border-radius:17px;max-height:calc(100vh - 16px)}.login-visual{min-height:40vh;padding:24px}.login-copy h1{font-size:34px}.login-copy>p:last-child{font-size:12px}.login-panel{min-height:60vh;padding:28px 22px}.toast{bottom:12px;left:12px;right:12px}}@media (max-width:1180px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-grid,.payroll-summary-grid{grid-template-columns:1fr}}@media (max-width:760px){.catalog-grid,.projects-grid,.ad-budget-grid{grid-template-columns:1fr}.analytics-filter{flex-direction:column;align-items:stretch}.payroll-filter .period-presets+label{margin-left:0}.period-presets{grid-template-columns:repeat(4,1fr);display:grid}.analytics-filter label{justify-content:space-between}.analytics-filter input,.analytics-filter select{width:100%;margin-left:0}.catalog-item{flex-direction:column;align-items:flex-start}.catalog-actions{width:100%;margin-left:0}.catalog-actions>span{margin-right:auto}}
