@font-face{font-family:Inter;src:url('/assets/fonts/inter-latin.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
@font-face{font-family:'Space Grotesk';src:url('/assets/fonts/space-grotesk-latin.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
:root{
  --nav:#171a17;--nav2:#242a24;--ink:#1d261e;--muted:#637067;
  --line:#dfe5dc;--bg:#f6f8f4;--card:#fff;--accent:#225c34;
  --accent-dark:#164627;--blue:#326f6a;--teal:#21775c;--coral:#9b6743;
  --red:#a94646;--lime:#86ff2a;--shadow:none;
}
html{font-family:Inter,Arial,sans-serif;scroll-behavior:smooth}
[hidden]{display:none!important}
body{font-size:13px;line-height:1.5}
h1,h2,h3,.brand strong,.stat strong,.project-card h2{font-family:'Space Grotesk',Inter,Arial,sans-serif}
h1{font-size:clamp(27px,2.6vw,36px);letter-spacing:-.045em;font-weight:650;line-height:1.12;margin-bottom:8px}
h2{font-size:18px;letter-spacing:-.035em;font-weight:650}
h3{font-size:14px;font-weight:650}
a{color:var(--accent-dark)}
a:hover{color:#12391f}
:focus-visible{outline:3px solid #65bf37;outline-offset:3px}
.skip-link{position:absolute;left:12px;top:-60px;z-index:40;background:#fff;color:#173f24;padding:9px 14px;border:2px solid #65bf37;border-radius:5px}
.skip-link:focus{top:12px}
.sidebar{width:248px;background:var(--nav);color:#d7dfd5;border-right:1px solid #303b31}
.brand-wrap{position:relative;border-bottom:1px solid #323b33}
.brand{height:82px;padding:18px 21px;gap:12px;border:0}
.brand-mark,.auth-logo{width:42px;height:42px;display:block;object-fit:cover;flex:none;border-radius:50%;background:var(--lime);box-shadow:none}
.brand strong{font-size:19px;font-weight:700;line-height:1.1;letter-spacing:-.035em;color:white}
.brand em{font-style:normal;color:var(--lime);font-size:12px;letter-spacing:.04em;vertical-align:top;margin-left:1px}
.brand small{font-size:9px;letter-spacing:.13em;color:#9daf9f;margin-top:5px}
.side-scroll{padding:19px 11px}
.nav-label{color:#8ca08e;font-size:10px;letter-spacing:.13em;font-weight:700;margin:20px 13px 9px}
.nav-link{height:43px;padding:0 13px;border-radius:5px;color:#c4d0c3;font-size:13px;font-weight:550;margin:1px 0;position:relative}
.nav-link:hover{background:#2b352c;color:#fff}
.nav-link.active{background:#2d3d30;color:#fff;font-weight:650}
.nav-link.active::before{content:'';position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:0 2px 2px 0;background:var(--lime)}
.nav-count{background:var(--lime);color:#162516;border-radius:4px;font-weight:800;padding:2px 6px}
.side-foot{border-color:#323b33;padding:15px 17px}
.avatar{background:#334936;color:#e9ffe2;border-radius:7px}
.side-user strong{font-size:12px}
.side-user span{color:#a7b7a7;font-size:10px}
.logout{font-size:20px;color:#c1d5bd;border-radius:5px;padding:4px 8px}
.logout:hover{background:#2d3d30;color:#fff}
.sidebar-close,.menu-toggle,.nav-scrim{display:none}
.main{margin-left:248px}
.topbar{height:70px;background:#fff;border-bottom:1px solid var(--line);padding:0 35px}
.breadcrumb{color:#657366;font-size:12px;font-weight:550}
.breadcrumb span{color:#a7b9a7}
.quick-search{height:38px;border:1px solid #d9e2d8;border-radius:6px;background:#f9fbf8;padding:0 11px}
.quick-search:focus-within{border-color:#5da842;box-shadow:0 0 0 3px #86ff2a33}
.quick-search input{font-size:12px;width:210px;color:var(--ink)}
.quick-search input::placeholder{color:#829185}
.search-glyph{width:13px;height:13px;border:1.8px solid #647965;border-radius:50%;position:relative;display:inline-block;flex:none}
.search-glyph::after{content:'';position:absolute;width:6px;height:1.8px;background:#647965;right:-5px;bottom:-2px;transform:rotate(45deg);border-radius:2px}
.bell{display:grid;place-items:center;width:37px;height:37px;border:1px solid transparent;border-radius:6px;color:#304b37}
.bell:hover{background:#eff5ed;border-color:#e1e9df}
.bell svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.bell i{background:#1e6236;font-size:9px;top:-4px;right:-4px}
.top-avatar{background:#e4efe1;color:#1d5830;border-radius:7px;font-weight:750}
.content{max-width:1520px;padding:34px 35px 70px}
.page-head{align-items:end;gap:25px;margin-bottom:25px}
.page-head p{color:#5b675d;font-size:13px;line-height:1.55;max-width:690px}
.page-actions{flex:none}
.eyebrow{color:#2b6539;font-size:10px;letter-spacing:.14em;margin-bottom:10px}
.button{border:1px solid #cdd8cc;border-radius:5px;background:#fff;color:#263a2a;padding:9px 15px;min-height:38px;font-size:12px;font-weight:650;box-shadow:none;transition:background .15s,border-color .15s,color .15s}
.button:hover{background:#edf4eb;border-color:#a9bea9;color:#173f22}
.button.primary{background:#225c34;border-color:#225c34;color:#fff;box-shadow:none}
.button.primary:hover{background:#184727;border-color:#184727;color:#fff}
.button.subtle{background:#eef5ed;border-color:#d9e8d7;color:#1f5b31}
.card,.stat{border:1px solid var(--line);border-radius:8px;box-shadow:none}
.dashboard-grid.lower .card:first-child{align-self:start}
.dashboard-grid.lower.single{display:block}
.card{padding:24px;margin-bottom:18px}
.card-head{margin-bottom:18px}
.card-head a{font-size:12px}
.stat{min-height:125px;padding:19px 21px;transition:border-color .15s,background .15s}
.stat:hover{transform:none;border-color:#8eb38e;background:#fbfdf9}
.stat span{color:#526255;font-size:12px;font-weight:650}
.stat strong{font-size:34px;color:#17261a;letter-spacing:-.06em;margin:7px 0 3px}
.stat small{font-size:11px;color:#3a6742}
.list-row{min-height:59px;border-color:#edf0eb;font-size:13px}
.list-row:hover{background:#f8fbf6}
.list-row strong{font-size:13px;font-weight:650}
.list-row small{font-size:11px;color:#677368}
.row-dot{background:#aeb9ae}
.row-dot.normal{background:#4d9461}
.row-dot.high,.row-dot.urgent,.row-dot.coral{background:#bd7843}
.row-dot.blue{background:#487980}
.row-dot.low{background:#8cae91}
.badge{font-size:10px;padding:4px 8px;border-radius:4px;background:#edf0eb;color:#4f5c50;font-weight:700;line-height:1.4}
.badge-in-progress,.badge-active,.badge-meeting-booked,.badge-partial{background:#e9f1ed;color:#245f48}
.badge-review,.badge-proposal-sent,.badge-negotiation,.badge-high,.badge-urgent{background:#f9ede1;color:#855329}
.badge-done,.badge-approved,.badge-paid,.badge-won,.badge-completed,.badge-accepted{background:#e5f3e7;color:#245c30}
.badge-blocked,.badge-do-not-contact,.badge-lost,.badge-inactive,.badge-overdue{background:#f9e8e5;color:#9a403c}
.badge-new,.badge-qualified,.badge-open,.badge-normal{background:#eef3e9;color:#3f6541}
.table-card{padding:0;overflow:hidden}
.table-wrap{overflow-x:auto;overscroll-behavior-inline:contain}
.table-wrap table{min-width:680px}
.table-wrap th{background:#f7faf6;color:#556656;font-size:10px;font-weight:750;letter-spacing:.095em;text-transform:uppercase}
.table-wrap td{font-size:12px;color:#314035;vertical-align:middle}
.table-wrap tr:hover td{background:#fbfdf9}
.table-main{color:#1f3927;font-size:12px;font-weight:700}
.table-main:hover{text-decoration:underline}
.table-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);background:#fff}
.table-tools label{display:block;min-width:210px;max-width:340px;flex:1}
.table-tools input{height:37px;width:100%;border:1px solid #d5ded3;border-radius:5px;padding:8px 11px;background:#f9fbf8;font-size:12px}
.table-tools small{font-size:11px;white-space:nowrap}
.table-filter-empty{padding:22px;color:#617165;font-size:12px}
.card-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:1px 0 15px}
.card-tools label{display:block;width:min(100%,340px)}
.card-tools input{height:38px;width:100%;border:1px solid #d5ded3;border-radius:5px;padding:8px 11px;background:#fff;font:inherit;font-size:12px}
.card-tools small{font-size:11px}
.search-page-form{display:flex;gap:9px;max-width:710px;margin:0 0 21px}
.search-page-form input{flex:1;min-width:0;min-height:42px;border:1px solid #ced9cc;border-radius:5px;background:#fff;padding:10px 13px;font:inherit}
.search-page-form input:focus{border-color:#5da842;box-shadow:0 0 0 3px #86ff2a33;outline:0}
.search-results{max-width:960px}
.search-results .card-head{margin-bottom:5px}
.section-jump{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 17px}
.section-jump a{border:1px solid #cfddcb;background:#fff;color:#2c5836;padding:8px 13px;border-radius:5px;font-size:12px;font-weight:650}
.section-jump a:hover{background:#ecf5e9;text-decoration:none}
.ops-grid .card{scroll-margin-top:25px}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.form-grid{gap:10px 18px}
.field>span{font-size:12px;color:#3d4b3f;font-weight:650;margin-bottom:7px}
.field input,.field select,.field textarea,.form input[type=file],.form select,.form textarea,.toolbar input,.toolbar select,.picker-search{border:1px solid #ced9cc;border-radius:5px;background:#fff;color:var(--ink);font-size:13px}
.field input,.field select{min-height:42px;padding:10px 12px}
.field textarea{line-height:1.55;padding:10px 12px}
.field input:focus,.field select:focus,.field textarea:focus,.picker-search:focus,.toolbar input:focus,.toolbar select:focus{border-color:#5da842;box-shadow:0 0 0 3px #86ff2a33;outline:0}
.form-actions{margin-top:18px}
.checkbox{font-size:12px;color:#364b3a}
.notice{background:#f2f7ef;border:1px solid #dce9d7;border-left:3px solid #74b450;border-radius:5px;color:#3a5841;font-size:12px;line-height:1.55}
.notice.danger{background:#fcf1ee;border-color:#efdbd4;border-left-color:#b65545;color:#8d4b40}
.flash{border-radius:5px;background:#edf8ea;border-color:#d5e8cf;color:#245c32}
.flash.error{background:#fff0ee;border-color:#e9cfc7;color:#9b423c}
.tabs{gap:20px;margin-bottom:18px;overflow-x:auto;white-space:nowrap}
.tabs a{padding:10px 2px;color:#617063;font-size:12px;font-weight:650}
.tabs a:hover{color:#1a552b;text-decoration:none}
.tabs a.on{border-color:#327d40;color:#1b552b}
.view-switch{gap:0;margin:0 0 19px}
.view-switch a{padding:9px 16px;border-color:#d7e2d4;color:#506152;font-size:12px}
.view-switch a.on{background:#e5f2e1;border-color:#a8c9a1;color:#1f5a2c}
.view-switch a:hover{text-decoration:none;background:#f2f7ef}
.toolbar>a{font-size:12px}
.due-filter{display:flex;align-items:center;gap:6px;white-space:nowrap;padding:0 5px;margin:0;font-size:12px}
.due-filter input{width:auto;accent-color:#225c34}
.project-card:hover,.template-card:hover{border-color:#9fc49c;background:#fbfdf9}
.project-icon{background:#e7f2e3;color:#2b653a;border-radius:5px}
.project-card p{color:#617063;font-size:12px}
.progress{background:#e5ebe3}
.progress i{background:#4c9455}
.template-grid{gap:14px}
.template-card h2{font-size:17px}
.template-card p{font-size:12px;color:#516352}
.template-card small{font-size:11px}
.sample-import{background:#f7faf5}
.sample-import p{font-size:12px;color:#506253}
.board-column{background:#eff3ed;border-color:#dce4d9;border-radius:7px}
.task-board{align-items:start}
.board-column h2{font-size:13px;color:#243a2a}
.board-card{border-color:#dce5d9;border-radius:6px;box-shadow:none}
.board-card>a{font-size:12px}
.board-card>small{font-size:11px;color:#5c6c5d}
.board-meta{font-size:10px;color:#5a695e}
.board-action{border-color:#e7ece4}
.board-action summary{color:#255d34;font-size:11px}
.calendar-head h2{font-size:19px}
.task-calendar{border-color:var(--line);border-radius:6px}
.task-calendar .weekday{background:#f4f8f1;color:#4d6451;font-size:10px}
.calendar-day{border-color:#e7ece5}
.calendar-day>a{background:#e6f2e2;color:#24532f;border-radius:4px;padding:6px;font-size:10px}
.calendar-day>a:hover{background:#d4eacd}
.calendar-day.outside{background:#f8faf7}
.horizontal-hint{display:none;color:#5d6f5e;font-size:11px;margin:0 0 9px}
.picker{border-color:#d5e0d2;border-radius:6px}
.picker legend{color:#3b5a40;font-size:12px}
.picker-search{padding:9px 11px}
.picker-option{border-color:#e7eee4}
.picker-option strong{font-size:12px}
.picker-option small,.picker>small{font-size:11px}
.meeting-date{background:#e5f1e1;color:#2c653b;border-radius:5px}
.doc-brand{font-family:'Space Grotesk',Inter,sans-serif;color:#1a3321;letter-spacing:-.03em}
.doc-brand span{color:#4b8c50;letter-spacing:.19em}
.proposal-price strong,.balance{color:#1d5730}
.notification button{font-size:13px;color:#253c2b}
.notification button:hover{background:#f7fbf5}
.notification button>span:nth-child(2){font-size:13px}
.notification small{font-size:11px}
.auth-wrap{background:#f3f7ef;position:relative}
.auth-wrap::before{content:'';position:absolute;inset:0 auto 0 0;width:9px;background:#1d5d30}
.auth-card{border-color:#d8e4d4;border-radius:9px;box-shadow:0 20px 54px #193b1820;padding:38px}
.auth-logo{width:54px;height:54px;margin-bottom:20px}
.auth-card h1{font-size:30px}
.auth-card p{font-size:13px;color:#586a5a}
.auth-note{color:#67786a;font-size:11px}
.empty{color:#526454}
.empty-icon{background:#edf5e8;color:#315f35;border-radius:50%;font-family:'Space Grotesk',sans-serif}
.sidebar-close:focus-visible,.menu-toggle:focus-visible{outline-color:var(--lime)}
@media(max-width:1100px){.content{padding:28px 26px 55px}.topbar{padding:0 26px}}
@media(max-width:800px){
  .sidebar{position:fixed;inset:0 auto 0 0;width:min(304px,86vw);height:100dvh;transform:translateX(-101%);visibility:hidden;transition:transform .2s ease,visibility .2s ease;z-index:31;box-shadow:12px 0 32px #101a1640}
  .nav-open .sidebar{transform:translateX(0);visibility:visible}
  .sidebar .brand{justify-content:flex-start;height:82px;padding:18px 21px}
  .sidebar .brand>span:last-child,.sidebar .nav-label,.sidebar .nav-link,.sidebar .side-user,.sidebar .logout{display:block}
  .sidebar .nav-link{display:flex}
  .sidebar .side-scroll{display:block;overflow-y:auto;padding:19px 11px;height:auto}
  .sidebar .side-foot{display:flex;justify-content:initial;padding:15px 17px}
  .sidebar-close{display:grid;place-items:center;position:absolute;right:11px;top:21px;width:35px;height:35px;color:#e7f1e2;background:transparent;border:1px solid #425346;border-radius:5px;font-size:23px;line-height:1;cursor:pointer}
  .nav-scrim{display:none;position:fixed;inset:0;border:0;background:#0b160dc2;z-index:30}
  .nav-open .nav-scrim{display:block}
  .nav-open{overflow:hidden}
  .main{margin-left:0;width:100%}
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:4px;width:38px;height:38px;padding:9px;border:1px solid #d9e5d5;border-radius:5px;background:#fff;cursor:pointer;flex:none}
  .menu-toggle span{display:block;width:18px;height:2px;background:#2a5936;border-radius:1px}
  .mobile-brand{display:flex;align-items:center;gap:7px;font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:16px;color:#1f472b;margin-right:auto}
  .mobile-brand img{width:28px;height:28px;border-radius:50%}
  .topbar{height:62px;gap:11px;padding:0 17px}
  .top-actions{gap:9px}
  .quick-search,.breadcrumb{display:none}
  .content{padding:24px 19px 50px}
}
@media(max-width:600px){
  .sidebar{width:min(304px,86vw);bottom:auto;height:100dvh}
  .sidebar .brand,.sidebar .side-foot,.sidebar .nav-label{display:flex}
  .sidebar .side-scroll{display:block;height:auto;overflow-y:auto}
  .sidebar .nav-link{display:flex;height:43px;white-space:normal;font-size:13px}
  .content{padding:22px 15px 48px}
  .page-head{align-items:flex-start;margin-bottom:22px}
  .page-head h1{font-size:28px}
  .page-head p{font-size:12px}
  .page-actions{width:100%}
  .page-actions>.button{width:100%}
  .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
  .stat{min-height:104px;padding:14px}
  .stat strong{font-size:28px}
  .stat span{font-size:11px}
  .stat small{font-size:10px}
  .card{padding:18px}
  .table-card{padding:0}
  .table-tools{padding:11px 13px}
  .toolbar form{width:100%}
  .toolbar select,.toolbar button{flex:1}
  .task-board{grid-template-columns:repeat(5,minmax(235px,1fr))}
  .horizontal-hint{display:block}
  .calendar-head h2{font-size:16px}
  .auth-card{padding:26px}
  .search-page-form{flex-direction:column}
  .auth-wrap::before{width:5px}
}
@media(max-width:380px){.stats{grid-template-columns:1fr}.top-avatar{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sidebar,.button,.stat{transition:none}}
@media print{.skip-link,.nav-scrim,.menu-toggle{display:none!important}.print-page,.print-doc{background:#fff}.print-doc{box-shadow:none;border:0}}
