@font-face {
  font-family:Inter;
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url(fonts/inter-latin-400-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2191,U+2193
}

@font-face {
  font-family:Inter;
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url(fonts/inter-latin-700-normal.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+2000-206F,U+20AC,U+2122,U+2191,U+2193
}

@font-face {
  font-family:Inter;
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url(fonts/inter-cyrillic-400-normal.woff2) format('woff2');
  unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116
}

@font-face {
  font-family:Inter;
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url(fonts/inter-cyrillic-700-normal.woff2) format('woff2');
  unicode-range:U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116
}

@font-face {
  font-family:Manrope;
  font-style:normal;
  font-weight:200 800;
  font-display:swap;
  src:url(fonts/manrope.ttf) format('truetype')
}

:root {
  color-scheme:light;
  --font-body:Inter,sans-serif;
  --font-display:Manrope,sans-serif;
  --text-s:12px;
  --line-s:18px;
  --text-m:16px;
  --line-m:24px;
  --text-l:26px;
  --line-l:36px;
  --text-xl:42px;
  --line-xl:52px;
  --bg:#FFFFFF;
  --surface:#F4F4F6;
  --raised:#EAEAF0;
  --text:#080808;
  --muted:#606069;
  --line:#D7D7DF;
  --accent:#3700E5;
  --accent-ink:#3700E5;
  --accent-soft:#EEE9FF;
  --purple:#3700E5;
  --lime:#D3FF17;
  --blue:#A1BBED;
  --focus:#3700E5;
  --danger:#B0233E;
  --success:#236A42;
  --day-selected-bg:#E4E4E9;
  --r-field:8px;
  --r-surface:16px;
  --r-pill:999px;
  --s1:4px;
  --s2:8px;
  --s3:12px;
  --s4:16px;
  --s6:24px;
  --s8:32px;
  --s12:48px
}

:root[data-theme=dark] {
  color-scheme:dark;
  --bg:#080808;
  --surface:#171719;
  --raised:#252529;
  --text:#FFFFFF;
  --muted:#B1B1BB;
  --line:#3C3C43;
  --accent:#D3FF17;
  --accent-ink:#D3FF17;
  --accent-soft:#292D17;
  --focus:#D3FF17;
  --danger:#FF9EB3;
  --success:#9AD8AF;
  --day-selected-bg:#303034
}
/* Production v1.13 shell; shared tokens above, workout rules stay in workouts.css. */
:root{--border:var(--line);--card:var(--surface)}
*{box-sizing:border-box;min-width:0}body{margin:0;background:var(--bg);color:var(--text);font:400 var(--text-m)/var(--line-m) var(--font-body)}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}[hidden]{display:none!important}::selection{background:var(--lime);color:#080808}h1,h2,h3,p{margin:0}h1,h2{font:600 var(--text-l)/var(--line-l) var(--font-display);letter-spacing:-.04em}h3{font:600 var(--text-m)/var(--line-m) var(--font-display)}p+p{margin-top:12px}strong,b{font-weight:700}small,.small,.muted,.footnote{color:var(--muted)}small,.small,.footnote{font-size:var(--text-s);line-height:var(--line-s)}a{color:var(--accent-ink)}button{border:0;background:none}button svg{display:block;flex-shrink:0}.row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.space,.subhead{display:flex;align-items:center;justify-content:space-between;gap:12px}.subhead{margin-bottom:24px}.section-title{margin:0}.topbar{max-width:1168px;margin:auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;gap:12px;min-height:76px}.brand{display:flex;align-items:center;gap:12px;font-weight:700}.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#080808;color:#fff}.worknav{display:flex;align-items:center;gap:12px}.module-trigger{display:flex;align-items:center;gap:8px;min-height:44px;text-align:left;padding:0}.icon-button,.eye{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;min-width:44px;width:44px;height:44px;border-radius:999px;background:var(--surface);font-size:var(--text-m);line-height:var(--line-m)}.analytics-shortcut{background:var(--text);color:var(--bg)}.main-content,.global-error{max-width:1120px;margin:0 auto}.main-content{padding:24px 0 48px}.panel{min-width:0}.main-content>section>h1{margin-bottom:24px}.btn,.tab{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 16px;border-radius:999px;text-decoration:none;text-align:center;white-space:normal;line-height:24px}.btn{background:var(--text);color:var(--bg)}.btn.ghost,.tab{background:var(--surface);color:var(--text)}.btn.danger{background:transparent;color:var(--danger)}.btn.green{background:var(--accent);color:var(--bg)}.tab.active{background:var(--text);color:var(--bg)}.menu-wrap{position:relative}.dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:20;display:grid;min-width:224px;max-width:calc(100vw - 32px);padding:8px;background:var(--bg);border:1px solid var(--line);border-radius:16px;box-shadow:0 16px 48px #0002}.dropdown button,.mini-entry{display:flex;text-align:left;align-items:center;min-height:44px;padding:8px 12px;border-radius:8px;text-decoration:none;color:var(--text)}.dropdown button:hover{background:var(--surface)}.module-menu{left:0;right:auto}.period-control{margin-bottom:24px;width:max-content;max-width:100%}.period-control .dropdown{left:0;right:auto}.period-trigger{font-weight:700;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:999px}.toast{position:fixed;bottom:max(16px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);z-index:80;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 32px);padding:12px 16px;background:var(--text);color:var(--bg);border-radius:16px;box-shadow:0 8px 32px #0003}.toast button{min-width:44px;min-height:44px}.error,.field-error{padding:12px;border:1px solid var(--danger);border-radius:8px;color:var(--danger);overflow-wrap:anywhere;margin-bottom:16px}.loading,.loading-inline,.empty{padding:24px 0;color:var(--muted)}.loading{text-align:center}.notice:not(.toast){margin:12px 0;padding:12px;background:var(--surface);border-radius:8px}.home-page h1{margin-bottom:24px}.home-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px}.home-card{grid-column:span 6;min-height:176px;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:20px;border-radius:16px;color:#080808;overflow-wrap:anywhere}.home-card:nth-child(1){grid-column:span 8}.home-card:nth-child(2){grid-column:span 4}.home-card:nth-child(3){grid-column:span 4}.home-card:nth-child(4){grid-column:span 8}.home-icon{margin-bottom:auto;padding-bottom:24px}.home-card strong{font:600 var(--text-m)/var(--line-m) var(--font-display);letter-spacing:-.02em}.home-purple strong{font-size:var(--text-l);line-height:var(--line-l)}.home-card .small{margin-top:4px;color:inherit;opacity:.8}.home-purple{background:#3700E5;color:#fff}.home-black{background:#080808;color:#fff}.home-lime{background:#D3FF17}.home-blue{background:#A1BBED}.home-neutral{background:var(--surface);color:var(--text)}.home-lavender{background:#E8DDFF;color:#080808}.home-mint{background:#BDEAD8;color:#080808}.home-lavender .small,.home-mint .small{color:#080808;opacity:1}
/* Forms and dialogs. */
.form,.field{display:grid;gap:12px}.form{gap:24px}.field>label,.field>span{display:block}.form input:not([type=checkbox]):not([type=radio]),.form textarea,.form select,.field input:not([type=checkbox]):not([type=radio]),.field select,.field textarea,input[type=date]{width:100%;min-height:48px;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--bg)}textarea{resize:vertical;min-height:120px;line-height:24px}input[type=checkbox],input[type=radio]{width:20px;height:20px;flex-shrink:0;accent-color:var(--accent);vertical-align:middle;margin-right:8px}.field label:has(input[type=checkbox]){display:flex;align-items:center;gap:8px;min-height:44px}.modalback{position:fixed;inset:0;z-index:50;background:#0008;display:flex;justify-content:center;align-items:flex-start;padding:24px;overflow:auto}.modal{position:relative;width:min(100%,560px);max-height:calc(100dvh - 48px);overflow:auto;padding:24px;border-radius:16px;background:var(--bg);box-shadow:0 24px 96px #0003}.modal>h2{padding-right:44px;margin-bottom:24px}.modal .x{position:absolute;right:16px;top:16px;width:44px;height:44px;border-radius:50%;background:var(--surface)}.modal>.form+.btn{margin-top:16px}.modal .subhead{padding-right:44px}.password-row{display:flex;gap:12px;align-items:center}.password-row input{flex:1}.auth{width:min(100% - 32px,488px);margin:48px auto 24px;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.auth>h1{margin-bottom:12px}.auth>p{margin-bottom:24px}.auth-choice{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.auth-choice .btn{width:100%;overflow-wrap:normal}.auth-theme{display:flex;justify-content:center;margin:24px}.auth-bottom{display:flex;justify-content:flex-end;padding:0 16px 16px}.mini-wrap{position:relative;text-align:right}.mini-trigger{min-width:44px;min-height:44px}.mini-pop{background:var(--surface);border-radius:12px}.theme-control{position:relative;display:flex;align-items:center;gap:12px;min-height:44px;padding:8px 12px}.theme-control input{position:absolute;opacity:0;left:40px;width:44px;height:32px;margin:0}.slider{position:relative;display:block;width:44px;height:24px;background:var(--line);border-radius:999px;pointer-events:none}.slider:after{content:'';position:absolute;top:4px;left:4px;width:16px;height:16px;background:var(--text);border-radius:50%;transition:transform .15s}.theme-control input:checked+.slider:after{transform:translateX(20px)}.theme-control:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px;border-radius:8px}
/* Tasks and analytics use the original data/commands. */
.task-list{display:grid;gap:0}.task{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.task-main{flex:1;text-align:left;padding:0;overflow-wrap:anywhere}.task-title{display:block}.task-main .small{display:block;margin-top:4px}.task.done>.task-main{color:var(--muted)}.card-open{background:transparent;border:0;text-align:left;color:inherit}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex:0 0 8px}.p0{background:#92929a}.p1{background:#22c55e}.p2{background:#facc15}.p3{background:#ef4444}.task-actions{display:flex;gap:12px;flex-wrap:wrap;flex-basis:100%;padding-left:20px}.task-actions .btn{background:transparent;padding:8px 12px;min-height:44px}.check-empty{color:var(--text);border:1px solid var(--line);border-radius:8px;background:none}.check-done{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;min-width:44px;height:44px;background:var(--success);color:var(--bg);border-radius:8px}.check-empty,.completion-mark{flex:0 0 44px;width:44px;min-width:44px;height:44px}.check-empty svg,.check-done svg,.completion-mark svg{width:24px;height:24px}.undo-icon{flex-shrink:0}.day-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:24px}.hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;padding:24px 0;margin-bottom:24px}.hero>.muted{max-width:100%;overflow-wrap:anywhere}.ring-v6{width:230px;height:230px;position:relative;flex:0 0 230px}.ring-v6 svg{width:100%;height:100%}.ring-v6>div{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:24px}.ring-v6 strong{font:600 var(--text-xl)/var(--line-xl) var(--font-display);letter-spacing:-.05em}.ring-v6 span{font-size:12px;line-height:18px;color:var(--muted)}.overdue-button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;background:var(--surface);min-height:48px;padding:12px 16px;margin-bottom:24px;border-radius:12px;text-align:left}.count{font-size:12px;line-height:18px}.daybar{display:block;height:4px;background:var(--line);border-radius:4px;overflow:hidden;margin-top:12px}.daybar>span,.daybar>div{display:block;height:100%;background:var(--accent)}.day-card{padding:16px 0;border-bottom:1px solid var(--line)}.day-expand{margin-top:12px}.early-chip{display:inline-block;font-size:12px;line-height:18px;border-radius:8px;padding:4px 8px;background:var(--accent-soft);color:var(--accent-ink)}.task-chart{height:224px;display:flex;align-items:flex-end;gap:8px;overflow-x:auto;padding-top:16px}.chart-column{display:flex;flex:0 0 44px;flex-direction:column;justify-content:flex-end;align-items:stretch;height:100%;gap:8px}.chart-column i{display:block;min-height:4px;border-radius:8px 8px 0 0}.chart-column small{display:block;text-align:center}.stat-lines{display:grid;margin:24px 0}.stat-lines>div,.numeric-total{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.stat-lines b{white-space:nowrap}.period-pills{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.task-description{white-space:pre-wrap;overflow-wrap:anywhere;margin:24px 0}.list-footer{margin-top:24px}.chart-pagination{font-size:12px;line-height:18px;margin-top:12px}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{text-align:left;padding:12px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
/* Calendar: black surface only, independent detail panel and external note marker. */
.calendar-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:32px}.calendar-surface{background:#080808;color:#fff;padding:20px;border-radius:16px;--day-selected-bg:#303034;--focus:#D3FF17;--danger:#FF9EB3}.calendar-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.calendar-toolbar h2,.calendar-toolbar h3{font:600 16px/24px var(--font-display);letter-spacing:0}.calendar-surface .icon-button,.calendar-surface .tab,.calendar-surface .btn.ghost{background:#252529;color:#fff}.calendar-surface .tab.active{background:#fff;color:#080808}.calendar-surface .btn:not(.ghost){background:#D3FF17;color:#080808}.calendar-modes{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:16px}.calendar-modes .tab{padding:8px 12px;white-space:nowrap}.calendar-weekdays,#calendar-grid,.salary-calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.calendar-weekdays{font-size:12px;line-height:18px;text-align:center;margin-bottom:12px;color:#b1b1bb}.calendar-cell{position:relative;display:flex;align-items:center;justify-content:center;min-height:52px;padding:0;border:0;border-radius:8px;background:transparent;color:inherit;font-size:16px;line-height:24px}.calendar-cell.is-selected{background:var(--day-selected-bg)}.calendar-cell.other-month{color:#8e8e98}.calendar-cell.is-today .calendar-number,.salary-calendar-grid .calendar-cell.is-today{font-weight:700}.calendar-cell:focus-visible{outline:2px solid #D3FF17;outline-offset:-4px}.calendar-cell.bulk-selected{background:#D3FF17;color:#080808}.calendar-cell.is-conflict{box-shadow:inset 0 0 0 2px #FF9EB3}.calendar-ring{position:absolute;width:40px;height:40px;max-width:100%;pointer-events:none}.calendar-number{position:relative;z-index:1}.calendar-note-dot{position:absolute;width:6px;height:6px;right:3px;top:3px;border-radius:50%;background:#FACC15}.calendar-task-marker{position:absolute;width:4px;height:4px;left:4px;top:4px;background:#B1B1BB;border-radius:50%}.calendar-legend{display:flex;flex-wrap:wrap;gap:8px 12px;margin:16px 0;color:#b1b1bb;font-size:12px;line-height:18px}.calendar-legend span{display:inline-flex;align-items:center;gap:4px}.calendar-legend i{width:4px;height:4px;background:#B1B1BB;display:inline-block;border-radius:50%}.calendar-legend i.yellow{background:#FACC15;border-radius:50%;width:6px;height:6px}.calendar-bulk{display:grid;gap:16px;margin-top:16px}.calendar-bulk input,.calendar-bulk select{background:#171719;color:#fff;border-color:#3c3c43}.bulk-start{width:100%;margin-top:8px;border:1px solid #6b6b75}.calendar-details>h2{margin-bottom:16px}.assigned-categories{overflow-wrap:anywhere}.category-commands{margin:12px 0 24px}.category-commands .btn{padding:8px 12px}.category-list{display:grid;gap:4px;margin-bottom:24px}.category-row{display:flex;align-items:center;gap:4px}.category-toggle{flex:1;justify-content:flex-start;border-radius:8px;text-align:left;overflow-wrap:anywhere}.category-swatch{width:16px;height:16px;border-radius:50%;flex:0 0 16px}.category-palette{border:0;margin:0;padding:0}.category-palette legend{margin-bottom:12px}.palette-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.palette-option{position:relative;display:flex;justify-content:center;align-items:center;min-height:44px;cursor:pointer}.palette-option input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.palette-circle{display:grid;place-items:center;position:relative;width:32px;height:32px;border-radius:50%;background:var(--swatch);color:#080808;pointer-events:none}.palette-check{visibility:hidden}.palette-option input:checked+.palette-circle .palette-check{visibility:visible}.palette-option:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px;border-radius:8px}.palette-option.is-busy .palette-circle{opacity:.4}.palette-busy{position:absolute}.category-palette .small{margin-top:12px}details{border-bottom:1px solid var(--line);padding:12px 0}summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'';flex:0 0 24px;width:24px;height:24px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M3 5h18M3 12h18M3 19h18' fill='none' stroke='black' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center/24px 24px no-repeat}details[open]>summary:after{opacity:.65}.disclosure-content{display:grid;gap:16px;padding:16px 0}.calendar-salary,.calendar-workouts{padding:16px 0;border-bottom:1px solid var(--line)}.calendar-salary .subhead,.calendar-workouts .subhead{margin-bottom:8px}.calendar-note-link{justify-content:flex-start;text-align:left;border-radius:8px;overflow-wrap:anywhere}
/* Salary calculator: date/total first, then one calendar and compact inputs. */
.salary-page{max-width:760px;margin:auto}.salary-date{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:24px 0}.salary-period-buttons{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.salary-date label{position:relative;flex:1;display:grid;gap:4px}.salary-date label>span{font-size:12px;line-height:18px;color:var(--muted)}.salary-date input{max-width:224px}.salary-total{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:4px;min-height:106px;padding:16px;border-radius:16px;background:#D3FF17;color:#080808;margin:24px 0 8px;overflow-wrap:anywhere}.salary-total>span{font-size:12px;line-height:18px}.salary-total strong{font:600 42px/52px var(--font-display);letter-spacing:-.04em;max-width:100%;overflow-wrap:anywhere}.salary-total small{color:#303030;font-size:12px;line-height:18px}.salary-total small.salary-unsaved{display:inline;padding-left:8px}.salary-total .salary-saved{margin-top:4px}.salary-calendar{margin:24px 0 16px}.salary-calendar>.calendar-surface{margin-top:16px}.salary-calendar-grid .range-edge{font-weight:700;background:var(--day-selected-bg)}.salary-calendar-grid .calendar-cell.is-selected,.salary-calendar-grid .in-range{background:var(--day-selected-bg)}.salary-earnings-dot{position:absolute;width:4px;height:4px;border-radius:50%;background:#F97316;bottom:4px;left:calc(50% - 2px)}.salary-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}.salary-item-name{flex:1}.salary-item-name strong{display:block;font-weight:400;overflow-wrap:anywhere;margin-bottom:8px}.salary-item-name label{display:flex;align-items:center;gap:8px;color:var(--muted)}.salary-item-name input{width:calc(var(--value-ch,5ch) + 12px);max-width:100%;min-height:48px;padding:8px 4px;background:none;border:0;border-bottom:1px solid transparent;border-radius:0;font-size:16px;line-height:24px;color:var(--text);font-variant-numeric:tabular-nums}.salary-counter{display:flex;align-items:center;gap:12px}.salary-counter input{width:calc(var(--value-ch,2ch) + 16px);max-width:100%;height:48px;padding:8px 4px;background:none;border:0;text-align:center;font-variant-numeric:tabular-nums;font-size:16px;line-height:24px}.salary-counter .icon-button{background:var(--raised)}.salary-item.is-wide{flex-wrap:wrap}.salary-item.is-wide .salary-item-name{flex-basis:100%}.salary-item.is-wide .salary-counter{margin-left:auto;max-width:100%}.salary-item input:focus{border-color:var(--line)}#salary-save-state{font-size:12px;line-height:18px;color:var(--muted)}.salary-adjustment{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,144px) 44px;gap:12px;align-items:end}.salary-template-fields{border:0;padding:0;margin:0;display:grid;gap:24px}.salary-template-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,160px) auto;gap:12px;align-items:end}.salary-template-row .btn{padding:12px}.salary-range-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 16px}.salary-range-row strong{grid-column:1/-1}.salary-day-link{display:flex;justify-content:space-between;text-align:left;gap:16px;border-radius:8px}.salary-page>.small{margin-top:16px}.salary-add-position .btn{justify-content:flex-start}.salary-page>details:last-child{margin-bottom:24px}.salary-page>.subhead h1{margin:0}
/* Notes retain full reader/editor and compact command menu. */
.note-card{position:relative;padding:16px 56px 16px 0;border-bottom:1px solid var(--line)}.note-card>.card-open{width:100%;display:block}.note-card b{font-weight:400;display:block;overflow-wrap:anywhere}.note-card p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:18px;margin:4px 0 8px}.note-card>.row{gap:4px;justify-content:flex-end}.note-command{position:absolute;top:8px;right:0}.note-card .dropdown{top:52px}.note-editor #note-body{display:block;width:100%;border:0;background:none;min-height:50vh;padding:0;resize:vertical;font:400 16px/24px var(--font-body)}.note-editor .subhead{margin-bottom:24px}#note-count{display:block;margin-top:12px}.note-date-row{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin-top:24px}.note-date-row>.field{flex:1;min-width:180px}.note-date-suggestions{display:flex;gap:12px;flex-wrap:wrap;margin:12px 0}.note-editor .error{margin-bottom:24px}.note-editor>p{margin-top:16px}
@media(max-width:1199px){.main-content,.global-error{margin-left:24px;margin-right:24px}.calendar-layout{gap:24px}}
@media(max-width:700px){.topbar{padding:16px}.main-content{margin:0;padding:16px 16px 32px}.global-error{margin:0 16px 16px}.home-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.home-card,.home-card:nth-child(n){grid-column:span 1;min-height:176px;padding:16px}.home-icon{padding-bottom:24px}.calendar-layout{grid-template-columns:1fr;gap:24px}.calendar-surface{padding:16px}.hero{gap:16px}.hero>.muted{font-size:12px;line-height:18px}.modalback{padding:16px}.modal{padding:24px 16px;max-height:calc(100dvh - 32px)}.modal .subhead{flex-wrap:wrap}.calendar-cell{min-height:48px}.calendar-toolbar .row{gap:4px}.salary-template-row{grid-template-columns:minmax(0,1fr) minmax(0,120px)}.salary-template-row>.btn{grid-column:1/-1;justify-self:end}.salary-adjustment{grid-template-columns:minmax(0,1fr) 44px}.salary-adjustment>.field:first-child{grid-column:1/-1}.salary-adjustment>.field:nth-child(2){grid-column:1}.salary-counter{gap:8px}.salary-item{gap:8px}.salary-item-name input{max-width:140px}.task-actions{padding-left:0}.task-actions .btn{padding:8px}.admin-table{font-size:12px;line-height:18px}.admin-table td,.admin-table th{padding:8px}.auth{margin-top:32px;padding:16px}.subhead{margin-bottom:24px}}
@media(max-width:360px){.topbar>.row{gap:8px}.worknav{gap:8px}.module-trigger{gap:4px}.calendar-surface{padding:12px}.calendar-toolbar{gap:4px}.calendar-toolbar .row{gap:0}.calendar-modes{gap:4px}.calendar-modes .tab{padding:8px}.home-grid{gap:12px}.salary-counter{gap:8px}.salary-counter .icon-button{width:44px;min-width:44px;flex-basis:44px}.salary-item.is-wide .salary-counter{width:100%;justify-content:flex-end}.salary-template-row{grid-template-columns:1fr}.salary-template-row>.btn{grid-column:1}.stat-lines>div{flex-wrap:wrap}.salary-date input{max-width:184px}.calendar-ring{width:34px;height:34px}}
.task{position:relative}.task>.task-actions.dropdown{position:absolute;right:0;top:calc(100% - 8px);flex-basis:auto;padding:8px;display:grid;gap:0}.task-actions.dropdown .btn{justify-content:flex-start;text-align:left;border-radius:8px}.task-actions.dropdown .btn:not(.danger){color:var(--text)}
.salary-total{margin-bottom:4px}#salary-save-state{line-height:18px}.salary-calendar{margin-top:0;padding-top:0;padding-bottom:0}.salary-calendar>summary{min-height:44px}
.ring-v6>div{padding:16px}.salary-range-row strong{overflow-wrap:anywhere}
/* Keep the native accessible picker, display an unambiguous Russian date. */
.salary-date label{min-height:48px;justify-content:center}.salary-date label>input[type=date]{position:absolute;inset:0;width:100%;max-width:none;opacity:0;cursor:pointer}.salary-date label>span{font-size:16px;line-height:24px;color:var(--text);padding:12px 0;pointer-events:none}.salary-date label:has(input:focus-visible){outline:2px solid var(--focus);outline-offset:2px;border-radius:8px}
/* Approved R3/WDI home composition, preserving the mobile 2×3 grid. */
:root[data-theme=dark] .home-black{background:#FFFFFF;color:#080808}
@media(min-width:701px){.home-card:nth-child(1){grid-column:span 5;grid-row:span 2}.home-card:nth-child(2){grid-column:span 7}.home-card:nth-child(3){grid-column:span 4}.home-card:nth-child(4){grid-column:span 3}.home-card:nth-child(5),.home-card:nth-child(6){grid-column:span 6}.home-purple strong{font-size:42px;line-height:52px}}
.task-list .task>button.task-main{min-height:44px}
@media(min-width:701px){.template-link{width:auto;flex:0 0 auto;gap:8px;padding:8px 12px}}@media(max-width:700px){.template-link-label{display:none}}

/* v1.13: keep readable authentication modes and the historic centred ring. */
@media(max-width:520px){.auth-choice{grid-template-columns:1fr}}
@media(max-width:430px){.ring-v6{width:200px;height:200px;flex-basis:200px}}
.module-trigger>svg,.period-trigger>svg,.icon-button>svg,.eye>svg{width:24px;height:24px}
.module-trigger,.period-trigger{display:inline-flex;align-items:center}.period-trigger{gap:12px}
.salary-period-buttons .btn,.salary-date>.btn{flex-shrink:0}
.salary-calendar>.range-open{margin-bottom:16px}

.menu-indicator,.completion-glyph{display:block;width:24px;height:24px;flex:0 0 24px}.salary-range-picker{margin-top:16px}

@media(max-width:700px){.home-purple strong{font-size:16px;line-height:24px}}
@media(max-width:700px){.salary-date>label{flex:0 0 100%;width:100%;text-align:center}.salary-date>label>span{white-space:normal}.salary-period-buttons{width:100%;justify-content:center}}

/* v1.14: common family, deliberate surfaces and restrained selection. */
.ui-icon{display:inline-block;vertical-align:middle;flex:0 0 24px;width:24px;height:24px}.auth h1{display:flex;align-items:center;gap:12px}.auth .btn:not(.ghost){background:#3700E5;color:#fff}:root[data-theme=dark] .auth .btn:not(.ghost){background:#D3FF17;color:#080808}.theme-control>.ui-icon{width:20px;height:20px;flex-basis:20px}.theme-control input{left:40px}.note-card b>.ui-icon{margin-right:8px}.calendar-surface{padding:24px}.calendar-cell.bulk-selected{background:#45454d;color:#fff;box-shadow:none}.salary-total{margin-bottom:0;padding:24px}.salary-calendar{margin-top:16px}.salary-calendar>[data-act=salaryinterval]{background:#3700E5;color:#fff}:root[data-theme=dark] .salary-calendar>[data-act=salaryinterval]{background:#A1BBED;color:#080808}.salary-template-row{grid-template-columns:minmax(0,1fr) minmax(0,160px) 44px}.salary-template-row>.salary-position-command{grid-column:auto;align-self:end;margin-bottom:2px}.salary-confirm-actions{margin-top:24px}.salary-confirm-actions .btn{min-width:80px}.salary-page>section>h2{margin-bottom:12px}.salary-page>section>p{margin-bottom:24px}.task-description{margin:24px 0}.occurrence-breakdown{margin-bottom:24px}.numeric-total{flex-wrap:wrap}.numeric-plan-bar{flex-basis:100%;width:100%;margin-top:0}.stat-lines b{white-space:normal;overflow-wrap:anywhere}.overdue-button>span{display:inline-flex;align-items:center;gap:8px}.theme-control .ui-icon{pointer-events:none}
@media(max-width:700px){.calendar-surface,.salary-total{padding:16px}.salary-template-row{grid-template-columns:minmax(0,1fr) 44px}.salary-template-row>.field:first-child{grid-column:1/-1}.salary-template-row>.field:nth-child(2){grid-column:1}.salary-template-row>.salary-position-command{grid-column:2}.salary-template-row>.field{gap:12px}.salary-date{margin-top:24px}}
@media(max-width:360px){.calendar-surface{padding:16px}.calendar-cell{min-width:0}}

summary:after{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20width%3D%2224%22%20height%3D%2224%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%221.6%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m6%209%206%206%206-6%22%2F%3E%3C%2Fsvg%3E%0A") }details[open]>summary:after{transform:rotate(180deg)}

/* v1.15: approved AXIS assets and primary actions, preserving module/category colors. */
:root{--on-accent:#FFFFFF}:root[data-theme=dark]{--on-accent:#080808}
.axis-brand{display:inline-flex;align-items:center;gap:12px;flex-shrink:0;vertical-align:middle}
.axis-brand img{display:block;object-fit:contain;flex-shrink:0}
.axis-icon{width:32px;height:32px;border-radius:8px}
.axis-entry-mark{width:24px;height:24px}
.axis-word{display:flex;align-items:center;width:72px;height:30px}
.axis-word img{width:72px;height:30px}
.axis-brand-entry .axis-word{height:36px}
.axis-brand .axis-dark{display:none}
:root[data-theme=dark] .axis-brand .axis-light{display:none}
:root[data-theme=dark] .axis-brand .axis-dark{display:block}
.admin-auth-brand{flex-wrap:wrap}.admin-auth-brand>span:last-child{font-size:16px;line-height:24px;letter-spacing:0}
.admin-topbar .brand{flex-wrap:wrap}
.btn.primary{background:var(--accent);color:var(--on-accent)}
.salary-counter [data-sign="1"]{background:var(--accent);color:var(--on-accent)}
.salary-setup .template-link-label{display:inline}
.salary-page>.subhead{flex-wrap:wrap}

/* Authentication mode is a selector; the submit remains the primary action. */
.auth .auth-choice .btn:not(.ghost){background:var(--raised);color:var(--text);box-shadow:inset 0 0 0 1px var(--line)}
:root[data-theme=dark] .auth .auth-choice .btn:not(.ghost){background:var(--raised);color:var(--text)}

.beta-notice{max-width:1120px;margin:0 auto 16px;padding:12px 16px;background:var(--surface);border-radius:8px;overflow-wrap:anywhere}@media(max-width:1199px){.beta-notice{margin-left:24px;margin-right:24px}}@media(max-width:700px){.beta-notice{margin-left:16px;margin-right:16px}}

.calendar-heading{flex-wrap:wrap}

/* Expired access keeps the AXIS shell and readable mobile spacing. */
.access-panel{max-width:720px;overflow-wrap:anywhere}.access-panel h1{margin-bottom:24px}.access-panel>.row{margin-top:24px}

/* With no active prices, setup is the first step; range browsing stays secondary. */
.salary-calendar.salary-empty-template>[data-act=salaryinterval],:root[data-theme=dark] .salary-calendar.salary-empty-template>[data-act=salaryinterval]{background:var(--surface);color:var(--text)}

/* Exact task summary may wrap without rounding or clipping the value. */
.task-progress-summary{overflow-wrap:anywhere}

/* The period title and its dated navigation occupy separate mobile rows. */
@media(max-width:700px){.analytics-period-heading{align-items:flex-start;flex-wrap:wrap}.analytics-period-heading>h2{flex-shrink:0}.analytics-period-heading>.row{flex:1 0 100%;flex-wrap:nowrap}.analytics-period-heading>.row>.small{flex:1;text-align:center;overflow-wrap:anywhere}}
.numeric-total>strong{overflow-wrap:anywhere}
