:root {
  --navy: #112434;
  --navy-2: #1a3447;
  --pink: #e50071;
  --pink-soft: #fde5f1;
  --teal: #25c6b3;
  --mint: #cffdf8;
  --bg: #f5f7f9;
  --surface: #ffffff;
  --line: #e1e6ea;
  --text: #16232d;
  --muted: #667784;
  --danger: #bd2d3a;
  --danger-soft: #fff0f1;
  --warning: #9a6500;
  --warning-soft: #fff8e5;
  --shadow: 0 10px 32px rgba(17,36,52,.07);
  --radius: 18px;
}
*{box-sizing:border-box}
html{font-family:Arial,Helvetica,sans-serif;background:var(--bg);color:var(--text)}
body{margin:0;min-height:100vh;background:var(--bg)}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
.app-shell{display:grid;grid-template-columns:230px minmax(0,1fr);min-height:100vh}
.sidebar{position:sticky;top:0;height:100vh;background:var(--navy);color:#fff;padding:28px 22px;display:flex;flex-direction:column;gap:28px}
.brand{display:flex;align-items:center;gap:11px}.brand-mark{width:42px;height:42px;border-radius:12px;background:var(--pink);display:grid;place-items:center;font-weight:800;color:#fff;letter-spacing:-1px}.brand strong{display:block;font-size:16px}.brand span{display:block;color:#b9c6cf;font-size:12px;margin-top:2px}
.nav{display:flex;flex-direction:column;gap:6px}.nav a{padding:11px 13px;border-radius:11px;color:#d8e1e7;font-size:14px}.nav a:hover,.nav a.active{background:rgba(255,255,255,.10);color:#fff}.nav a.active{box-shadow:inset 3px 0 0 var(--pink)}
.sidebar-note{margin-top:auto;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;display:flex;flex-direction:column;gap:4px}.sidebar-note span{color:var(--pink);font-weight:700}.sidebar-note small{color:#a9bbc6;line-height:1.4}.logout-form{margin:0}.link-button{border:0;background:none;color:#b9c6cf;padding:0;font-size:13px}.link-button:hover{color:#fff}
.main{min-width:0}.topbar{min-height:112px;padding:26px 38px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:rgba(245,247,249,.94);backdrop-filter:blur(8px);position:sticky;top:0;z-index:10;border-bottom:1px solid rgba(225,230,234,.7)}
.topbar h1{margin:4px 0 0;font-size:30px;letter-spacing:-.7px}.eyebrow{text-transform:uppercase;letter-spacing:.09em;font-size:10px;font-weight:700;color:var(--muted)}
.content{padding:28px 38px 60px;max-width:1680px;margin:0 auto}
.btn{border:0;border-radius:11px;padding:10px 15px;font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:.15s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--pink);color:#fff;box-shadow:0 6px 16px rgba(229,0,113,.18)}.btn-dark{background:var(--navy);color:#fff}.btn-ghost{background:#edf1f4;color:var(--navy)}.btn-small{padding:8px 11px;font-size:12px}.btn-wide{width:100%;padding:12px}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px}.compact-panel{padding:15px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:17px}.panel-head h2{margin:4px 0 0;font-size:18px}.text-link{color:var(--pink);font-size:13px;font-weight:700}.muted{color:var(--muted)}
.metric-grid{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));gap:12px;margin-bottom:24px}.metric-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:17px;display:flex;flex-direction:column;gap:4px;min-height:113px;transition:.16s;box-shadow:0 5px 18px rgba(17,36,52,.04)}.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.metric-card span{color:var(--muted);font-size:12px}.metric-card strong{font-size:31px;line-height:1;color:var(--navy)}.metric-card small{margin-top:auto;color:#8896a0;font-size:11px}.metric-card.accent{border-top:3px solid var(--pink)}.metric-card.danger{border-top:3px solid var(--danger)}.metric-card.warning{border-top:3px solid #e0a000}.metric-card.danger-soft{background:var(--danger-soft)}
.two-col{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(340px,.65fr);gap:18px;margin-bottom:18px}.task-stack{display:flex;flex-direction:column;gap:6px}.task-row{display:grid;grid-template-columns:74px minmax(0,1fr) auto;gap:12px;padding:11px 10px;border-radius:12px;border:1px solid transparent;align-items:center}.task-row:hover{background:#f8fafb;border-color:var(--line)}.task-code{font-size:11px;font-weight:800;letter-spacing:.04em;color:var(--pink);white-space:nowrap}.task-main{min-width:0}.task-main strong{display:block;font-size:13px;line-height:1.35}.task-main span{display:block;margin-top:4px;color:var(--muted);font-size:11px;line-height:1.35}.task-flags{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;max-width:230px}.task-flags small{color:var(--muted)}
.pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700;background:#edf1f4;color:#50616d;white-space:nowrap}.pill.priority.p1{background:var(--pink);color:#fff}.pill.priority.p2{background:#e8f3ff;color:#256098}.pill.priority.p3{background:#edf2f4;color:#637582}.pill.blocked{background:var(--danger-soft);color:var(--danger)}.pill.waiting{background:var(--warning-soft);color:var(--warning)}.pill.inbox-pill{background:var(--mint);color:#087669;margin-left:6px}.pill.status{background:#eef2f5;color:#4a5e6d}
.status-bars{display:flex;flex-direction:column;gap:12px}.status-bar-row{display:grid;grid-template-columns:150px 1fr 30px;gap:10px;align-items:center;font-size:12px}.status-bar-row span{color:#4e616e}.bar-track{height:7px;background:#edf1f4;border-radius:99px;overflow:hidden}.bar-fill{height:100%;background:var(--teal);border-radius:99px}.status-bar-row strong{text-align:right;color:var(--navy)}
.compact-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact-task{border:1px solid var(--line);border-radius:12px;padding:13px;min-height:112px;display:flex;flex-direction:column;gap:7px}.compact-task:hover{border-color:#b9c7d1}.compact-task strong{font-size:12px;line-height:1.4}.compact-task small{margin-top:auto;color:var(--muted);font-size:10px}
.filters{display:grid;grid-template-columns:minmax(280px,2fr) repeat(5,minmax(120px,1fr)) auto auto;gap:8px;margin-bottom:16px;align-items:center}.filters input,.filters select{width:100%;height:39px;border:1px solid #d8e0e5;border-radius:9px;padding:0 10px;background:#fff;color:var(--text);font-size:12px}.filter-search input{min-width:260px}.list-summary{font-size:12px;color:var(--muted);margin:0 3px 10px}.list-summary strong{color:var(--navy);font-size:16px}.table-panel{padding:0;overflow:hidden}.table-wrap{overflow:auto}.task-table{border-collapse:collapse;width:100%;min-width:1120px}.task-table th{position:sticky;top:0;background:#f6f8fa;color:#657783;font-size:10px;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:12px;border-bottom:1px solid var(--line);z-index:1}.task-table td{padding:12px;border-bottom:1px solid #edf0f2;font-size:12px;vertical-align:top;line-height:1.35}.task-table td:nth-child(1){width:82px}.task-table td:nth-child(2){width:27%}.task-table td:nth-child(3){width:16%}.task-table td:nth-child(4){width:135px}.task-table td:nth-child(5){width:50px}.task-table td:nth-child(6){width:28%;color:#50616d}.task-table td:nth-child(7){width:80px}.task-table td small{display:block;color:var(--muted);margin-top:3px}.click-row{cursor:pointer}.click-row:hover{background:#fafcfd}.danger-dot{width:7px;height:7px;background:var(--danger);border-radius:50%;display:inline-block;margin-left:6px}.pagination{display:flex;align-items:center;justify-content:center;gap:15px;margin-top:17px}.pagination a{background:#fff;border:1px solid var(--line);border-radius:9px;padding:7px 11px}.pagination span{font-size:12px;color:var(--muted)}
.intro-block{background:var(--mint);border:1px solid #a4ede4;border-radius:15px;padding:14px 18px;margin-bottom:16px;display:flex;gap:8px;flex-direction:column}.intro-block strong{color:#0a695e}.intro-block span{font-size:12px;color:#45736e;line-height:1.5}.inbox-row{display:flex;justify-content:space-between;gap:22px;padding:16px 4px;border-bottom:1px solid var(--line);align-items:center}.inbox-row:last-child{border-bottom:0}.inbox-row>div:first-child{display:flex;flex-direction:column;gap:6px}.inbox-row strong{font-size:13px;line-height:1.45}.inbox-row small{color:var(--muted)}.row-actions{display:flex;gap:7px;align-items:center}.row-actions form{margin:0}
.detail-header{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:18px}.detail-pills{display:flex;gap:6px;flex-wrap:wrap}.detail-title{font-size:25px;line-height:1.25;letter-spacing:-.35px;margin:10px 0 7px;max-width:1050px}.breadcrumbs{font-size:12px;color:var(--muted)}.detail-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);gap:18px;margin-bottom:18px}.detail-main{display:flex;flex-direction:column;gap:4px}.field-block{padding:12px 0;border-bottom:1px solid var(--line)}.field-block:last-child{border-bottom:0}.field-block label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:700}.field-block p{margin:7px 0 0;line-height:1.55;font-size:13px;white-space:pre-wrap}.highlight-block{background:#fff7fb;border:1px solid #f7c7df;border-radius:13px;padding:14px;margin:8px 0}.highlight-block label{color:var(--pink)}.blocker-block{background:var(--danger-soft);border:1px solid #f7c8cd;border-radius:13px;padding:14px;margin-top:8px}.blocker-block label{color:var(--danger)}.meta-list{margin:0;display:flex;flex-direction:column}.meta-list>div{padding:10px 0;border-bottom:1px solid var(--line)}.meta-list>div:last-child{border:0}.meta-list dt{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.meta-list dd{margin:5px 0 0;font-size:12px;line-height:1.45}.timeline{display:flex;flex-direction:column;gap:0}.timeline-item{position:relative;padding:0 0 18px 23px;border-left:1px solid #d9e3e8;margin-left:5px}.timeline-item:last-child{border-left-color:transparent}.timeline-dot{width:10px;height:10px;background:var(--teal);border:2px solid #fff;box-shadow:0 0 0 1px var(--teal);border-radius:50%;position:absolute;left:-5.5px;top:2px}.timeline-item strong{font-size:11px;color:#45736e}.timeline-item p{font-size:12px;line-height:1.5;margin:5px 0}.timeline-item small{color:var(--muted)}.artifact-list{display:flex;flex-direction:column;gap:8px}.artifact{border:1px solid var(--line);border-radius:12px;padding:12px}.artifact>div{display:flex;align-items:center;gap:8px}.artifact-type{font-size:9px;background:#edf2f5;border-radius:5px;padding:4px 6px;color:#687984}.artifact strong{font-size:12px}.artifact a{font-size:11px;color:var(--pink);font-weight:700;display:inline-block;margin-top:8px}.artifact p{font-size:11px;line-height:1.45;color:var(--muted);margin:8px 0 0;white-space:pre-wrap}.business-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.business-card{border-left:3px solid var(--teal);padding:10px 12px;background:#f8fbfb;border-radius:0 10px 10px 0}.business-card strong{font-size:12px;display:block}.business-card span{font-size:11px;color:var(--muted);line-height:1.5;display:block;margin-top:5px}.history-panel{margin-top:18px}.history-panel summary{font-weight:700;font-size:13px;cursor:pointer}.history-panel summary span{color:var(--muted);font-weight:400}.history-list{margin-top:15px;display:flex;flex-direction:column}.history-list>div{display:grid;grid-template-columns:130px 160px 1fr;gap:10px;border-top:1px solid var(--line);padding:8px 0;font-size:11px}.history-list small{color:var(--muted)}
.edit-form{display:flex;flex-direction:column;gap:15px}.form-section{padding:23px}.section-title{display:flex;align-items:flex-start;gap:12px;margin-bottom:20px}.section-title>span{background:var(--navy);color:#fff;width:26px;height:26px;display:grid;place-items:center;border-radius:8px;font-size:11px;font-weight:800}.section-title h2{font-size:17px;margin:1px 0 4px}.section-title p{margin:0;color:var(--muted);font-size:11px}.edit-form label{font-size:11px;font-weight:700;color:#4f626f;display:flex;flex-direction:column;gap:6px}.edit-form label small{font-weight:400;color:#85939d;line-height:1.4}.edit-form input,.edit-form textarea,.edit-form select{width:100%;border:1px solid #d8e0e5;border-radius:10px;background:#fff;padding:10px;color:var(--text);outline:none;transition:.12s}.edit-form input:focus,.edit-form textarea:focus,.edit-form select:focus{border-color:#89b9b3;box-shadow:0 0 0 3px rgba(37,198,179,.1)}.edit-form textarea{resize:vertical;line-height:1.5}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:14px}.full{grid-column:1/-1;margin-top:12px}.checkbox-line{flex-direction:row!important;align-items:center;gap:8px!important;margin-top:14px}.checkbox-line input{width:auto!important}.form-actions-panel{display:flex;justify-content:space-between;align-items:center;gap:20px}.form-actions{display:flex;gap:8px;margin-left:auto}
.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.project-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;min-height:145px;box-shadow:0 5px 18px rgba(17,36,52,.04)}.project-card:hover{border-color:#b9c7d1;transform:translateY(-1px)}.project-card>span{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.project-card h2{font-size:16px;margin:8px 0 21px}.project-stats{display:grid;grid-template-columns:auto 1fr auto 1fr;align-items:end;gap:6px}.project-stats strong{font-size:21px;color:var(--navy)}.project-stats small{font-size:10px;color:var(--muted);padding-bottom:3px}
.dialog{border:0;border-radius:20px;padding:0;max-width:620px;width:calc(100vw - 30px);box-shadow:0 30px 100px rgba(17,36,52,.28)}.dialog::backdrop{background:rgba(17,36,52,.55);backdrop-filter:blur(2px)}.quick-form{padding:24px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start}.dialog-head h2{margin:5px 0 18px}.icon-button{border:0;background:#edf1f4;border-radius:9px;width:34px;height:34px;font-size:20px;color:#60717d}.quick-form textarea{width:100%;border:1px solid #d6dee4;border-radius:12px;padding:13px;resize:vertical;line-height:1.5;outline:none}.quick-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.12)}.hint{font-size:11px;color:var(--muted);line-height:1.45}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}
.empty{padding:18px;text-align:center;color:var(--muted);font-size:12px}.big-empty{min-height:170px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px}.big-empty strong{font-size:16px}.alert{padding:11px 12px;border-radius:10px;font-size:12px}.alert-danger{background:var(--danger-soft);color:var(--danger)}
.login-page{display:grid;place-items:center;min-height:100vh;background:radial-gradient(circle at 25% 10%,#28445a 0,var(--navy) 38%,#0c1b26 100%)}.login-card{width:min(420px,calc(100vw - 30px));background:#fff;border-radius:22px;padding:31px;box-shadow:0 30px 90px rgba(0,0,0,.28)}.login-brand{margin-bottom:28px}.login-brand .brand-mark{width:40px;height:40px}.login-brand span{color:#798994}.login-card h1{margin:0 0 7px;font-size:28px}.login-card>.muted{font-size:12px;margin-bottom:22px}.stack-form{display:flex;flex-direction:column;gap:14px;margin-top:15px}.stack-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:700;color:#536571}.stack-form input{height:43px;border:1px solid #d8e0e5;border-radius:10px;padding:0 11px;outline:none}.stack-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.1)}
@media(max-width:1250px){.metric-grid{grid-template-columns:repeat(3,1fr)}.compact-grid{grid-template-columns:repeat(2,1fr)}.filters{grid-template-columns:repeat(4,1fr)}.filter-search{grid-column:span 2}.project-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:relative;padding:14px 18px;display:grid;grid-template-columns:1fr auto;gap:12px}.nav{grid-column:1/-1;flex-direction:row;overflow:auto}.nav a{white-space:nowrap}.sidebar-note{display:none}.logout-form{grid-column:2}.topbar{position:relative;padding:20px}.content{padding:20px}.two-col,.detail-grid{grid-template-columns:1fr}.metric-grid{grid-template-columns:repeat(2,1fr)}.business-grid,.project-grid{grid-template-columns:1fr}.filters{grid-template-columns:repeat(2,1fr)}.filter-search{grid-column:1/-1}.form-grid{grid-template-columns:1fr}.compact-grid{grid-template-columns:1fr}.topbar h1{font-size:25px}.form-actions-panel{align-items:flex-start;flex-direction:column}.form-actions{margin-left:0;width:100%}.form-actions .btn{flex:1}}
@media(max-width:560px){.metric-grid{grid-template-columns:1fr 1fr}.metric-card{min-height:100px}.task-row{grid-template-columns:58px 1fr}.task-flags{grid-column:2;justify-content:flex-start}.filters{grid-template-columns:1fr}.filter-search{grid-column:auto}.topbar{align-items:flex-start}.topbar .btn{padding:9px 10px}.content{padding:14px}.panel{padding:16px}.detail-header{flex-direction:column}.inbox-row{flex-direction:column;align-items:flex-start}.row-actions{width:100%;flex-wrap:wrap}.row-actions .btn{flex:1}.history-list>div{grid-template-columns:1fr}.status-bar-row{grid-template-columns:120px 1fr 25px}}

/* v0.2a — Сегодня + результаты */
.header-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn-success{background:#0f8f78;color:#fff}.btn-success-soft{background:#e6faf6;color:#0f7c69}.today-alert{margin-bottom:14px}.day-toolbar{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-bottom:22px}.date-nav{display:flex;align-items:center;gap:12px}.date-nav>div{display:flex;flex-direction:column;gap:2px;min-width:125px}.date-nav strong{font-size:17px}.date-nav span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.date-arrow{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;place-items:center;color:var(--navy);font-weight:800}.date-arrow:hover{border-color:#bac8d1;background:#f8fafb}
.today-focus-section{margin-bottom:22px}.today-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:12px}.today-section-head h2{margin:4px 0 4px;font-size:21px}.today-section-head p{margin:0;color:var(--muted);font-size:11px}.focus-counter{background:var(--navy);color:#fff;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800}.key-focus-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.focus-card{background:#fff;border:1px solid #f3b8d5;border-top:4px solid var(--pink);border-radius:17px;box-shadow:var(--shadow);padding:17px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:12px;position:relative;min-height:208px}.focus-rank{width:31px;height:31px;border-radius:10px;background:var(--pink);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:800}.focus-card-main{min-width:0}.task-card-meta{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.focus-title,.today-task-title{display:block;font-size:14px;line-height:1.38;font-weight:800;color:var(--navy);margin:10px 0 6px}.focus-title:hover,.today-task-title:hover{color:var(--pink)}.next-action{font-size:11px;line-height:1.45;color:#526571;margin:7px 0}.next-action span{font-weight:800;color:#324854}.focus-card-actions{grid-column:1/-1;display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:8px;border-top:1px solid #f1e1e9}.rank-actions{display:flex;gap:3px;margin-right:auto}.rank-actions form,.focus-card-actions form,.today-task-actions form{margin:0}.mini-icon{width:29px;height:29px;border:0;border-radius:8px;background:#f2f4f6;color:#526571;font-weight:800}.mini-icon:hover{background:#e6ebee}.text-action{border:0;background:transparent;color:#798995;font-size:10px;font-weight:700;padding:6px}.text-action:hover{color:var(--pink)}.empty-focus-card{border:1.5px dashed #d9a2be;background:#fff8fb;border-radius:17px;padding:26px;text-align:left;min-height:208px;display:flex;flex-direction:column;gap:8px;color:var(--navy)}.empty-focus-card strong{font-size:16px}.empty-focus-card span{font-size:11px;line-height:1.5;color:var(--muted);max-width:380px}.empty-focus-card b{margin-top:auto;color:var(--pink);font-size:12px}.pill.due-pill{background:#fff1cc;color:#8a6200}
.today-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;margin-bottom:18px}.today-main-panel{min-width:0}.legend-row{display:flex;gap:12px;align-items:center;font-size:10px;color:var(--muted)}.legend-row span{display:flex;gap:5px;align-items:center}.legend-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.legend-dot.due{background:#e3a400}.legend-dot.manual{background:var(--teal)}.today-task-list{display:flex;flex-direction:column;gap:8px}.today-task-card{border:1px solid var(--line);border-left:4px solid var(--teal);border-radius:13px;padding:12px 13px;display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:13px;align-items:center;background:#fff}.today-task-card.today-due{border-left-color:#d9a000;background:#fffdf6}.today-task-source{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#73838e;font-weight:800}.today-task-body{min-width:0}.today-task-title{margin:5px 0}.today-path{display:block;color:#82909a;font-size:10px;margin-top:6px}.today-task-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;max-width:310px}.today-side{display:flex;flex-direction:column;gap:18px}.attention-panel{padding:18px}.attention-group{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.attention-group:first-of-type{border-top:0;padding-top:0;margin-top:0}.attention-title{display:flex;justify-content:space-between;font-size:10px;text-transform:uppercase;letter-spacing:.06em;font-weight:800;color:#61727d;margin-bottom:7px}.attention-title span{background:#edf1f4;border-radius:999px;padding:2px 6px}.danger-text{color:var(--danger)}.attention-item{display:grid;grid-template-columns:61px minmax(0,1fr);gap:6px 8px;padding:9px 7px;border-radius:9px}.attention-item:hover{background:#f8fafb}.attention-item strong{font-size:11px;line-height:1.35}.attention-item small{grid-column:2;color:var(--muted);font-size:9.5px;line-height:1.35}
.panel-subtitle{font-size:10.5px;color:var(--muted);margin:5px 0 0;line-height:1.45}.result-count{width:34px;height:34px;border-radius:10px;background:var(--mint);color:#087669;display:grid;place-items:center;font-weight:800}.result-day-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.result-day-card{border:1px solid var(--line);border-radius:13px;padding:13px;display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;background:#fff}.result-day-card.highlight-result{border-color:#f1b5d3;background:#fff9fc}.result-icon{width:29px;height:29px;border-radius:9px;background:#e8f8f5;color:#0c8d78;display:grid;place-items:center;font-weight:900}.highlight-result .result-icon{background:var(--pink-soft);color:var(--pink)}.result-day-main{min-width:0}.result-meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:5px}.result-meta a{color:var(--pink);font-size:10px;font-weight:800}.result-meta span{font-size:9px;color:#6d7e89;text-transform:uppercase;letter-spacing:.04em}.result-meta b{font-size:9px;background:var(--pink);color:#fff;border-radius:99px;padding:2px 6px}.result-day-main>strong{font-size:12px;line-height:1.45;display:block}.result-day-main>small{display:block;color:var(--muted);font-size:10px;line-height:1.4;margin-top:6px}
.dialog-label{font-size:11px;font-weight:700;color:#536571;display:flex;flex-direction:column;gap:6px;margin-top:11px}.dialog-label small{font-weight:400;color:var(--muted)}.dialog-label input,.dialog-label select{width:100%;height:40px;border:1px solid #d8e0e5;border-radius:10px;padding:0 10px;background:#fff}.dialog-form-grid{display:grid;grid-template-columns:1fr 1.5fr;gap:10px;align-items:end}.checkbox-card{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;border:1px solid var(--line);border-radius:11px;padding:10px 11px;margin-top:11px;cursor:pointer}.checkbox-card input{width:auto!important}.checkbox-card span{display:flex;flex-direction:column;gap:2px}.checkbox-card strong{font-size:11px}.checkbox-card small{font-size:9.5px;color:var(--muted);font-weight:400}.compact-checkbox{margin:10px 0 0!important}.day-task-dialog{max-width:760px}.task-picker-search{width:100%;height:42px;border:1px solid #d8e0e5;border-radius:11px;padding:0 12px;outline:none}.task-picker-search:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.1)}.task-picker-list{max-height:390px;overflow:auto;border:1px solid var(--line);border-radius:12px;margin-top:10px}.task-picker-item{display:grid;grid-template-columns:22px 1fr;gap:8px;align-items:flex-start;padding:10px 11px;border-bottom:1px solid #edf0f2;cursor:pointer}.task-picker-item:last-child{border-bottom:0}.task-picker-item:hover{background:#f8fafb}.task-picker-item input{margin-top:4px}.task-picker-item>span{display:grid;grid-template-columns:66px 1fr;gap:2px 8px}.task-picker-item b{font-size:10px;color:var(--pink)}.task-picker-item strong{font-size:11px;line-height:1.35}.task-picker-item small{grid-column:2;color:var(--muted);font-size:9.5px}.task-picker-item[hidden]{display:none}.today-alert+.day-toolbar{margin-top:0}

@media(max-width:1200px){.key-focus-grid{grid-template-columns:1fr}.focus-card{min-height:0}.today-layout{grid-template-columns:1fr}.today-side{display:block}.result-day-list{grid-template-columns:1fr}.today-task-card{grid-template-columns:80px minmax(0,1fr)}.today-task-actions{grid-column:2;justify-content:flex-start;max-width:none}}
@media(max-width:720px){.day-toolbar{align-items:stretch;flex-wrap:wrap}.date-nav{width:100%;justify-content:space-between}.key-focus-grid{grid-template-columns:1fr}.today-task-card{grid-template-columns:1fr}.today-task-source{margin-bottom:-4px}.today-task-actions{grid-column:1;justify-content:flex-start}.today-section-head{align-items:center}.dialog-form-grid{grid-template-columns:1fr}.task-picker-item>span{grid-template-columns:55px 1fr}.result-day-list{grid-template-columns:1fr}}

/* v0.2b — Неделя + месяц */
.period-toolbar form{margin:0}.period-metrics{display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;margin-bottom:18px}.period-metric{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:3px;box-shadow:0 4px 14px rgba(17,36,52,.035)}.period-metric span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:700}.period-metric strong{font-size:25px;color:var(--navy)}.period-metric small{font-size:9.5px;color:#8a98a2}.period-metric.result-metric{border-top:3px solid var(--teal)}
.period-goals{margin-bottom:18px}.soft-note{font-size:10px;color:#71818c;background:#f1f4f6;padding:6px 9px;border-radius:999px;white-space:nowrap}.period-goal-form textarea{width:100%;border:1px solid #d8e0e5;border-radius:12px;padding:12px 13px;resize:vertical;line-height:1.5;outline:none}.period-goal-form textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.1)}.goal-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:9px}.goal-actions small{color:var(--muted);font-size:10px}.desired-result-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}.desired-result-list>div{display:grid;grid-template-columns:28px 1fr;gap:8px;align-items:start;background:#f8fafb;border-radius:10px;padding:9px 10px}.desired-result-list span{width:24px;height:24px;border-radius:8px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:10px;font-weight:800}.desired-result-list strong{font-size:11px;line-height:1.4}
.period-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:18px;margin-bottom:18px}.period-main,.period-side{display:flex;flex-direction:column;gap:18px;min-width:0}.period-focus-list{display:flex;flex-direction:column;gap:10px}.period-focus-card{display:grid;grid-template-columns:35px minmax(0,1fr);gap:12px;border:1px solid var(--line);border-left:4px solid var(--pink);border-radius:14px;padding:14px;background:#fff}.period-focus-card.period-task-done{border-left-color:var(--teal);background:#fbfffe}.period-rank{width:31px;height:31px;border-radius:9px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}.period-task-title{display:block;font-size:13px;font-weight:800;color:var(--navy);margin:7px 0 4px;line-height:1.4}.period-task-title:hover{color:var(--pink)}.period-item-form{margin-top:12px;border-top:1px solid #edf0f2;padding-top:11px}.period-item-form label{display:flex;flex-direction:column;gap:5px}.period-item-form label>span{font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#71818c;font-weight:800}.period-item-form textarea,.period-item-form input,.period-item-form select{width:100%;border:1px solid #d8e0e5;border-radius:9px;padding:8px 9px;background:#fff;font-size:11px;outline:none}.period-item-form textarea:focus,.period-item-form input:focus,.period-item-form select:focus{border-color:var(--teal)}.period-form-row{display:grid;grid-template-columns:150px minmax(0,1fr);gap:9px;margin:9px 0}.period-card-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:9px}.period-order-actions{display:flex;align-items:center;gap:4px;margin-top:7px}.period-order-actions form{margin:0}.period-order-actions .text-action{margin-left:auto}
.period-due-list{display:flex;flex-direction:column;gap:6px}.period-due-row{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:12px;align-items:center;padding:10px;border:1px solid var(--line);border-left:4px solid #d9a000;border-radius:11px;background:#fffdf7}.period-due-row>div:first-child{display:flex;flex-direction:column;gap:3px}.period-due-row>div:first-child b{font-size:10px;color:#8b6908}.period-due-row>div:nth-child(2) a{font-size:11px;font-weight:800;line-height:1.35}.period-due-row>div:nth-child(2) a:hover{color:var(--pink)}.period-due-row small{display:block;margin-top:3px;font-size:9.5px;color:var(--muted)}
.project-focus-list{display:flex;flex-direction:column;gap:7px}.project-focus-list>div{display:grid;grid-template-columns:30px 1fr;gap:1px 8px;padding:8px;border-radius:9px;background:#f8fafb}.project-focus-list span{grid-row:1/3;width:27px;height:27px;border-radius:8px;background:var(--mint);color:#087669;display:grid;place-items:center;font-size:10px;font-weight:800}.project-focus-list strong{font-size:10.5px;line-height:1.3}.project-focus-list small{font-size:9px;color:var(--muted)}.period-results{margin-bottom:18px}.period-result-list .result-day-card{min-height:108px}
@media(max-width:1200px){.period-metrics{grid-template-columns:repeat(3,1fr)}.period-layout{grid-template-columns:1fr}.period-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.desired-result-list{grid-template-columns:1fr}}
@media(max-width:760px){.period-metrics{grid-template-columns:1fr 1fr}.period-side{display:block}.period-side>.panel{margin-bottom:14px}.period-form-row{grid-template-columns:1fr}.period-due-row{grid-template-columns:1fr}.period-card-actions{justify-content:flex-start;flex-wrap:wrap}.goal-actions{align-items:flex-start;flex-direction:column}.soft-note{white-space:normal}}
.carryover-list{display:flex;flex-direction:column;gap:7px}.carryover-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;padding:8px;border-radius:10px;background:#fff9ef;border:1px solid #f2e4be}.carryover-item a{display:grid;grid-template-columns:58px 1fr;gap:2px 6px}.carryover-item strong{font-size:10.5px;line-height:1.35}.carryover-item small{grid-column:2;color:var(--muted);font-size:9px;line-height:1.35}

/* v0.3 — управление периодами и проектами */
.project-toolbar-v03{display:flex;gap:16px;justify-content:space-between;align-items:center;margin-bottom:16px}.project-search-form{display:flex;gap:8px;flex:1;flex-wrap:wrap}.project-search-form input{min-width:260px;flex:1}.project-search-form select{min-width:190px}.no-project-card{display:flex;align-items:center;justify-content:space-between;text-decoration:none;color:inherit;margin-bottom:18px}.no-project-card h2{margin:4px 0}.no-project-card p{margin:0;color:var(--muted)}.no-project-card>strong{font-size:36px}.project-grid-v03{grid-template-columns:repeat(auto-fit,minmax(290px,1fr))}.project-card-v03{padding:0;overflow:hidden}.project-card-main{display:block;padding:20px;text-decoration:none;color:inherit}.project-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px;color:var(--muted)}.project-card-v03 h2{margin:14px 0 8px}.project-card-v03 p{color:var(--muted);min-height:40px}.project-stats-v03{display:flex;gap:22px;margin-top:18px}.project-stats-v03 span{display:grid}.project-stats-v03 strong{font-size:22px}.project-stats-v03 small{color:var(--muted)}.project-card-actions{border-top:1px solid var(--border);padding:10px 20px;display:flex;gap:16px}.project-card-actions a{font-size:13px}.warning-panel{border-color:#e5b65f}.similar-projects{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.similar-projects a{padding:8px 10px;border:1px solid var(--border);border-radius:10px}.project-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}.project-summary-grid section{display:grid;gap:4px}.project-summary-grid span{color:var(--muted);font-size:13px}.project-summary-grid strong{font-size:30px}.project-description{display:grid;gap:18px}.project-description label{font-size:12px;color:var(--muted);text-transform:uppercase}.bulk-project-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.bulk-project-actions select{min-width:260px}.project-task-list{display:grid;gap:6px}.project-task-row{display:grid;grid-template-columns:auto 80px minmax(220px,1fr) auto auto 90px;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:10px}.project-task-row a{color:inherit;text-decoration:none;font-weight:600}.project-task-row small{color:var(--muted)}.project-danger-grid form{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.project-danger-grid select{min-width:260px}.danger-panel{border-color:#efc4c4}.btn-danger{background:#b43b3b;color:white;border-color:#b43b3b}.danger-text{color:#a43d3d!important}.soft-warning{padding:10px 12px;border-radius:10px;background:#fff7df;margin-bottom:14px;color:#6e5720}.expected-outcomes-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:12px}.expected-outcome-card{border:1px solid var(--border);border-radius:14px;padding:14px;background:var(--surface-soft)}.expected-outcome-card form:first-child{display:grid;gap:10px}.expected-outcome-card textarea{width:100%}.expected-outcome-meta{display:flex;gap:10px;align-items:center;justify-content:space-between}.expected-outcome-meta select{flex:1}.expected-outcome-meta span{font-size:12px;color:var(--muted)}.expected-outcome-card>form:last-child{margin-top:8px;text-align:right}.period-item-grid{display:grid;grid-template-columns:2fr 1fr .8fr 1.2fr;gap:10px}.readonly-field{padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-soft);min-height:42px}.picker-filters{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0}.task-picker-item em{font-size:12px;color:var(--muted);font-style:normal;display:block;margin-top:4px}.project-focus-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.project-focus-stats>div{border:1px solid var(--border);border-radius:10px;padding:12px;display:grid;gap:4px}.project-focus-stats span{font-size:12px;color:var(--muted)}
@media (max-width:900px){.project-toolbar-v03{align-items:stretch;flex-direction:column}.project-summary-grid{grid-template-columns:1fr}.project-task-row{grid-template-columns:auto 70px 1fr}.project-task-row .pill,.project-task-row small{grid-column:3}.period-item-grid,.picker-filters{grid-template-columns:1fr 1fr}}@media (max-width:600px){.period-item-grid,.picker-filters{grid-template-columns:1fr}.project-task-row{grid-template-columns:auto 1fr}.project-task-row .task-code{grid-column:2}.project-task-row a,.project-task-row .pill,.project-task-row small{grid-column:2}}

/* v0.3.1 — точечная доработка периодов и проектов */
.period-focus-panel{overflow:visible}
.period-focus-list-v031{gap:12px}
.period-focus-card-v031{display:block;border:1px solid var(--line);border-left:4px solid var(--pink);border-radius:16px;padding:0;background:#fff;overflow:hidden;box-shadow:0 4px 14px rgba(17,36,52,.035)}
.period-card-header-v031{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:12px;align-items:start;padding:15px 16px 13px;background:#fbfcfd;border-bottom:1px solid #edf0f2}
.period-rank-v031{width:32px;height:32px;border-radius:10px;background:var(--navy);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:800}
.period-card-identity-v031{min-width:0}
.period-card-badges-v031{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:6px}
.day-linked-pill{background:#e8f8f5;color:#087669}.period-due-chip{font-size:10px;color:#7a5a00;background:#fff3cf;border-radius:999px;padding:4px 8px;white-space:nowrap}
.period-card-title-v031{display:block;font-size:14px;line-height:1.4;font-weight:800;color:var(--navy);max-width:1050px}.period-card-title-v031:hover{color:var(--pink)}
.period-card-path-v031{display:flex;gap:6px;flex-wrap:wrap;margin-top:5px;color:var(--muted);font-size:10.5px}.period-next-action-v031{margin-top:8px;font-size:11px;line-height:1.4;color:#536571}.period-next-action-v031 b{color:#324854}
.period-card-order-v031 form{display:flex;gap:4px}.period-item-form-v031{margin:0;padding:14px 16px 10px;border:0}.period-plan-fields-v031{display:grid;gap:12px}.period-milestone-v031{margin:0!important}.period-milestone-v031>span,.period-plan-row-v031 label>span,.period-actual-v031>span,.period-closeout-body-v031 label>span{font-size:10px;text-transform:uppercase;letter-spacing:.055em;color:#657783;font-weight:800}.period-milestone-v031>small{font-size:10px;color:var(--muted);font-weight:400;line-height:1.4;margin-top:-1px}
.period-item-form-v031 textarea,.period-item-form-v031 input,.period-item-form-v031 select{font-size:12px;padding:9px 10px;border-radius:10px}.period-milestone-v031 textarea{min-height:62px;resize:vertical}
.period-plan-row-v031{display:grid;grid-template-columns:minmax(280px,1fr) 105px 90px;gap:10px;align-items:end}.period-hours-v031,.period-outcome-link-v031{margin:0!important}.period-actual-v031{display:flex;flex-direction:column;gap:5px}.period-actual-v031 strong{height:39px;display:flex;align-items:center;padding:0 11px;background:#f3f6f8;border:1px solid var(--line);border-radius:10px;font-size:13px;color:var(--navy)}
.period-closeout-v031{margin-top:12px;border-top:1px solid #edf0f2;padding-top:10px}.period-closeout-v031 summary{cursor:pointer;color:#536571;font-size:11px;font-weight:700;list-style:none;display:flex;align-items:center;gap:5px}.period-closeout-v031 summary::-webkit-details-marker{display:none}.period-closeout-v031 summary:before{content:'›';font-size:18px;line-height:1;transform:rotate(0deg);transition:.12s}.period-closeout-v031[open] summary:before{transform:rotate(90deg)}.period-closeout-v031 summary span{color:#0f8f78;font-weight:700}.period-closeout-body-v031{display:grid;grid-template-columns:220px minmax(0,1fr);gap:10px;margin-top:10px}.period-closeout-body-v031 label{margin:0!important}
.period-item-actions-v031{display:flex;justify-content:flex-end;gap:7px;margin-top:12px}.remove-period-form-v031{padding:0 16px 12px;text-align:right}.remove-period-form-v031 .link-button{color:#7b8992}.remove-period-form-v031 .link-button:hover{color:var(--danger)}

.period-picker-dialog-v031{max-width:1120px;width:min(1120px,calc(100vw - 34px));max-height:88vh}.period-picker-form-v031{padding:0;display:flex;flex-direction:column;max-height:88vh}.period-picker-head-v031{padding:22px 24px 14px;border-bottom:1px solid var(--line);background:#fff}.period-picker-head-v031 h2{margin:4px 0 5px}.period-picker-head-v031 p{margin:0;color:var(--muted);font-size:11px;line-height:1.45;max-width:780px}.period-picker-tools-v031{padding:14px 24px 12px;background:#f8fafb;border-bottom:1px solid var(--line)}
.period-picker-search-wrap-v031,.picker-filters-v031 label{display:flex;flex-direction:column;gap:5px}.period-picker-search-wrap-v031>span,.picker-filters-v031 label>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.055em;color:#6b7b86;font-weight:800}.period-picker-search-wrap-v031 input,.picker-filters-v031 select{height:39px;border:1px solid #d6dee4;border-radius:10px;background:#fff;padding:0 10px;font-size:12px;outline:none}.period-picker-search-wrap-v031 input:focus,.picker-filters-v031 select:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.08)}.picker-filters-v031{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:9px 0 0}
.period-picker-list-head-v031{display:flex;justify-content:space-between;align-items:center;padding:9px 24px 7px;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-weight:800;background:#fff}.period-task-picker-list-v031{margin:0 24px;border-radius:12px;max-height:48vh;min-height:260px;overflow:auto}.period-picker-row-v031{display:grid;grid-template-columns:20px 70px minmax(0,1fr) 155px;gap:10px;align-items:center;padding:9px 11px;min-height:74px}.period-picker-row-v031>input{margin:0}.period-picker-row-v031:has(input:checked){background:#fff7fb;box-shadow:inset 3px 0 0 var(--pink)}.period-picker-code-v031{font-size:10px;font-weight:800;color:var(--pink);white-space:nowrap}.period-picker-main-v031{min-width:0}.period-picker-main-v031>strong{display:block;font-size:11.5px;line-height:1.35;color:var(--navy);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.period-picker-path-v031{display:flex;gap:5px;align-items:center;margin-top:4px;color:#7b8b95;font-size:9.5px;white-space:nowrap;overflow:hidden}.period-picker-path-v031 span{overflow:hidden;text-overflow:ellipsis}.period-picker-next-v031{font-size:9.7px;color:#526571;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.period-picker-next-v031 b{color:#344b5b}.period-picker-side-v031{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap}.period-picker-side-v031 small{width:100%;text-align:right;font-size:9px;color:var(--muted)}
.period-picker-actions-v031{margin:0;padding:13px 24px 17px;border-top:1px solid var(--line);background:#fff;position:sticky;bottom:0;align-items:center}.period-selected-count-v031{margin-right:auto;font-size:11px;color:var(--muted)}.period-selected-count-v031 b{color:var(--navy);font-size:14px}.period-picker-actions-v031 button:disabled{opacity:.45;cursor:not-allowed;transform:none}

.project-controls-v031{padding:15px 17px;margin-bottom:16px}.project-controls-form-v031{display:grid;gap:13px}.project-search-row-v031{display:grid;grid-template-columns:minmax(280px,1fr) auto auto;gap:8px;align-items:end}.project-search-v031{display:flex;flex-direction:column;gap:5px}.project-search-v031 span{font-size:9.5px;text-transform:uppercase;letter-spacing:.055em;color:#6b7b86;font-weight:800}.project-search-v031 input{height:41px;border:1px solid #d8e0e5;border-radius:10px;padding:0 11px;outline:none}.project-search-v031 input:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.08)}
.project-filter-groups-v031{display:grid;grid-template-columns:1fr 1.35fr;gap:14px;padding-top:11px;border-top:1px solid #edf0f2}.project-chip-group-v031{border:0;margin:0;padding:0;display:flex;gap:6px;align-items:center;flex-wrap:wrap}.project-chip-group-v031 legend{float:left;width:auto;margin-right:7px;font-size:9.5px;text-transform:uppercase;letter-spacing:.055em;color:#6b7b86;font-weight:800}.project-filter-chip-v031{cursor:pointer}.project-filter-chip-v031 input{position:absolute;opacity:0;pointer-events:none}.project-filter-chip-v031 span{display:inline-flex;align-items:center;height:31px;padding:0 10px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#566874;font-size:10.5px;font-weight:700;transition:.12s}.project-filter-chip-v031:hover span{border-color:#bbc8d0;background:#f8fafb}.project-filter-chip-v031.active span{background:var(--navy);border-color:var(--navy);color:#fff}
.project-card-actions{border-top:1px solid var(--line)}.project-card-v03,.project-task-row,.similar-projects a{border-color:var(--line)}
.bulk-project-actions{padding:11px;background:#f8fafb;border:1px solid var(--line);border-radius:12px}.bulk-project-actions select,.project-danger-grid select{height:38px;border:1px solid #d8e0e5;border-radius:10px;background:#fff;padding:0 10px}.bulk-project-actions select:focus,.project-danger-grid select:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.08)}

@media(max-width:900px){.period-plan-row-v031{grid-template-columns:1fr 110px 90px}.picker-filters-v031{grid-template-columns:1fr 1fr}.period-picker-row-v031{grid-template-columns:20px 62px minmax(0,1fr)}.period-picker-side-v031{grid-column:3;justify-content:flex-start}.period-picker-side-v031 small{width:auto;text-align:left}.project-filter-groups-v031{grid-template-columns:1fr}.project-search-row-v031{grid-template-columns:1fr auto}.project-search-row-v031 .btn-primary{grid-column:1/-1}}
@media(max-width:620px){.period-card-header-v031{grid-template-columns:34px 1fr}.period-card-order-v031{grid-column:2}.period-plan-row-v031,.period-closeout-body-v031{grid-template-columns:1fr}.period-item-actions-v031{justify-content:flex-start;flex-wrap:wrap}.period-picker-dialog-v031{width:calc(100vw - 14px)}.period-picker-head-v031,.period-picker-tools-v031,.period-picker-actions-v031{padding-left:14px;padding-right:14px}.period-task-picker-list-v031{margin-left:14px;margin-right:14px}.picker-filters-v031{grid-template-columns:1fr}.period-picker-row-v031{grid-template-columns:20px 1fr;gap:8px}.period-picker-code-v031{grid-column:2}.period-picker-main-v031{grid-column:2}.period-picker-side-v031{grid-column:2}.project-search-row-v031{grid-template-columns:1fr}.project-search-row-v031 .btn-primary{grid-column:auto}.project-filter-groups-v031{gap:10px}.project-chip-group-v031{align-items:flex-start}.project-chip-group-v031 legend{width:100%;margin-bottom:2px}}
.bulk-project-actions-v031{display:grid;grid-template-columns:auto minmax(330px,1fr) auto;gap:12px;align-items:end}.bulk-check-all-v031{margin:0!important;height:38px;white-space:nowrap}.bulk-move-v031{display:grid;grid-template-columns:minmax(240px,1fr) auto;gap:7px;align-items:end}.bulk-move-v031 label,.project-merge-form-v031 label{display:flex;flex-direction:column;gap:5px}.bulk-move-v031 label>span,.bulk-remove-v031>span,.project-merge-form-v031 label>span{font-size:9.5px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:800}.bulk-remove-v031{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.project-merge-form-v031{display:grid!important;grid-template-columns:minmax(260px,1fr) auto;gap:8px!important;align-items:end!important}.project-merge-form-v031 label{min-width:0}.project-merge-form-v031 select{width:100%}
@media(max-width:900px){.bulk-project-actions-v031{grid-template-columns:1fr}.bulk-move-v031{grid-template-columns:1fr auto}.project-merge-form-v031{grid-template-columns:1fr}}@media(max-width:620px){.bulk-move-v031{grid-template-columns:1fr}}

/* v0.3.2: destructive task/result actions */
.inline-form{display:inline-flex;margin:0}.task-delete-btn{color:var(--danger)!important;border-color:#efd0d4!important}.task-delete-btn:hover{background:var(--danger-soft)!important;border-color:#e6b9bf!important}.result-with-actions{position:relative!important;display:block!important;padding-right:42px}.result-content{min-width:0}.result-delete-form{position:absolute;margin:0;z-index:2}.result-delete-btn{position:relative;width:32px;height:32px;border:0;background:#f2f5f7;color:#72818b;padding:0;cursor:pointer;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}.result-delete-btn svg{width:17px;height:17px;display:block;flex:none}.result-delete-btn:hover{color:var(--danger);background:var(--danger-soft);box-shadow:0 0 0 1px #f2c8cd inset}.result-delete-btn:active{transform:scale(.94)}.result-delete-btn:focus-visible{outline:2px solid rgba(189,45,58,.25);outline-offset:2px}.result-delete-btn::after{content:attr(data-tooltip);position:absolute;right:0;top:calc(100% + 7px);z-index:20;display:none;white-space:nowrap;background:var(--navy);color:#fff;font-size:10px;font-weight:700;line-height:1;padding:7px 9px;border-radius:7px;box-shadow:0 6px 18px rgba(17,36,52,.16);pointer-events:none}.result-delete-btn:hover::after,.result-delete-btn:focus-visible::after{display:block}.timeline-item.result-with-actions .result-delete-form{top:-7px;right:0}.result-day-card{position:relative;grid-template-columns:auto minmax(0,1fr);padding-right:54px}.result-day-card .result-delete-form{top:12px;right:12px}.result-delete-day{margin:0}@media(max-width:760px){.result-with-actions{padding-right:38px}.result-day-card{grid-template-columns:auto minmax(0,1fr);padding-right:48px}.result-day-card .result-delete-form{top:10px;right:10px}.result-delete-btn{width:28px;height:28px}}

/* v0.3.6 — result editing + managed materials */
.result-card-actions{position:absolute;top:-7px;right:0;display:flex;align-items:center;gap:5px;z-index:3}
.result-card-actions .result-delete-form{position:static!important;top:auto!important;right:auto!important;margin:0!important}
.result-edit-btn,.material-icon-btn{position:relative;width:32px;height:32px;border:0;background:#f2f5f7;color:#72818b;padding:0;cursor:pointer;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease,transform .15s ease,box-shadow .15s ease}
.result-edit-btn svg,.material-icon-btn svg{display:block;flex:none}
.result-edit-btn:hover,.material-icon-btn:hover{color:var(--navy);background:#e7edf1;box-shadow:0 0 0 1px #dbe3e8 inset}
.result-edit-btn:active,.material-icon-btn:active{transform:scale(.94)}
.result-edit-btn:focus-visible,.material-icon-btn:focus-visible{outline:2px solid rgba(37,198,179,.3);outline-offset:2px}
.result-edit-btn::after{content:attr(data-tooltip);position:absolute;right:0;top:calc(100% + 7px);z-index:20;display:none;white-space:nowrap;background:var(--navy);color:#fff;font-size:10px;font-weight:700;line-height:1;padding:7px 9px;border-radius:7px;box-shadow:0 6px 18px rgba(17,36,52,.16);pointer-events:none}
.result-edit-btn:hover::after,.result-edit-btn:focus-visible::after{display:block}
.result-day-card{padding-right:92px!important}
.result-day-card .result-card-actions-day{top:12px;right:12px}
.timeline-item.result-with-actions{padding-right:82px!important}
.inline-material-details{margin-top:14px;border:1px solid var(--line);border-radius:12px;background:#f8fafb}
.inline-material-details summary{cursor:pointer;padding:11px 13px;font-size:11px;font-weight:800;color:#536671;list-style:none}
.inline-material-details summary::-webkit-details-marker{display:none}
.inline-material-details[open] summary{border-bottom:1px solid var(--line);color:var(--pink)}
.inline-material-fields{padding:12px 13px 4px;display:flex;flex-direction:column;gap:10px}
.inline-material-fields input,.inline-material-fields select{width:100%;height:39px;border:1px solid #d6dee4;border-radius:10px;padding:0 10px;background:#fff;outline:none}
.inline-material-fields textarea{width:100%;border:1px solid #d6dee4;border-radius:10px;padding:10px;background:#fff;outline:none;resize:vertical}
.inline-material-fields input:focus,.inline-material-fields select:focus,.inline-material-fields textarea:focus{border-color:var(--teal);box-shadow:0 0 0 3px rgba(37,198,179,.1)}
.panel-head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.material-card{padding:13px!important;position:relative}
.material-card-head{display:flex!important;align-items:flex-start!important;justify-content:space-between;gap:10px}
.material-title{display:flex;align-items:center;gap:8px;min-width:0}
.material-title strong{line-height:1.35}
.material-actions{display:flex;gap:4px;flex:none}
.material-actions form{margin:0}
.material-icon-btn{width:29px;height:29px;border-radius:9px}
.material-icon-btn.danger:hover{color:var(--danger);background:var(--danger-soft);box-shadow:0 0 0 1px #f2c8cd inset}
.material-linked-result{display:block;margin-top:8px;color:#75858f;font-size:10px;line-height:1.4}
.artifact p b{color:#536671}
@media(max-width:760px){.result-day-card{padding-right:82px!important}.result-day-card .result-card-actions-day{top:10px;right:10px}.timeline-item.result-with-actions{padding-right:72px!important}.result-edit-btn,.result-delete-btn{width:28px;height:28px}.panel-head-actions{justify-content:flex-start}.material-card-head{align-items:flex-start!important}}

/* v0.4 — единая фактическая логика дня / недели / месяца */
.missed-plan-group { margin-bottom: 18px; }
.missed-plan-item {
  display: grid;
  gap: 10px;
  padding: 12px 0;
  border-bottom: 1px solid var(--border, #e6ebef);
}
.missed-plan-item:last-child { border-bottom: 0; }
.missed-plan-main { display: grid; gap: 4px; color: inherit; text-decoration: none; }
.missed-plan-main:hover strong { text-decoration: underline; }
.missed-plan-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.missed-date-form { display: inline-flex; align-items: center; gap: 6px; }
.missed-date-form input[type="date"] { width: 142px; min-height: 34px; padding: 5px 8px; }

.period-completed-panel { border-top: 3px solid #d9eee9; }
.period-completed-list { display: grid; gap: 10px; }
.period-completed-card {
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding: 14px 16px;
  border: 1px solid #dce5e8;
  border-radius: 16px;
  background: #fbfdfd;
}
.period-completed-card.stopped { opacity: .78; }
.period-completed-icon {
  width: 34px;
  height: 34px;
  display: grid;
  place-items: center;
  border-radius: 12px;
  background: #e6f7f3;
  color: #008b78;
  font-weight: 800;
  font-size: 18px;
}
.period-completed-main { min-width: 0; display: grid; gap: 6px; }
.period-completed-title { color: #102333; font-size: 16px; font-weight: 750; text-decoration: none; }
.period-completed-title:hover { text-decoration: underline; }
.period-completed-meta { display: flex; flex-wrap: wrap; gap: 12px; color: #647886; font-size: 13px; }
.period-completed-result { margin: 2px 0 0; color: #334d5c; }
.result-task-code-link, .result-task-title-link { color: inherit; text-decoration: none; }
.result-task-code-link:hover, .result-task-title-link:hover { text-decoration: underline; }

@media (max-width: 900px) {
  .period-completed-card { grid-template-columns: 34px minmax(0, 1fr); }
  .period-completed-card > .btn { grid-column: 2; justify-self: start; }
}


/* v0.4.1 clean-start: imported plan steps */
.task-steps-panel{margin-top:16px}
.task-step-list{display:grid;gap:8px}
.task-step-row{display:grid;grid-template-columns:30px 1fr;gap:10px;padding:11px 12px;border:1px solid var(--border,#e5e7eb);border-radius:12px;background:#fff}
.task-step-mark{width:26px;height:26px;border-radius:8px;background:#f3f4f6;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#555}
.task-step-body strong{display:block;font-size:14px;line-height:1.35}
.task-step-body p{margin:5px 0 0;font-size:13px;line-height:1.4;color:#50545a}
.task-step-body small{display:block;margin-top:6px;color:#7a7f87}
.task-step-row.is-done{opacity:.68}


/* v0.4.2 — сводка результатов: уникальные задачи + фактические часы */
.results-panel-head{align-items:flex-start}
.result-summary-metrics{display:flex;align-items:stretch;justify-content:flex-end;gap:8px;flex:none}
.result-summary-chip{min-height:38px;padding:7px 12px;border-radius:11px;display:flex;align-items:baseline;justify-content:center;gap:5px;white-space:nowrap;border:1px solid transparent}
.result-summary-chip strong{font-size:17px;line-height:1;color:inherit;letter-spacing:-.2px}
.result-summary-chip span{font-size:10px;font-weight:700;color:inherit}
.result-summary-tasks{background:var(--mint);color:#087669}
.result-summary-hours{background:#eef2f5;color:var(--navy);border-color:#e4e9ed}
.result-hours-chip{display:inline-flex!important;align-items:center;border-radius:999px;padding:3px 7px;background:#eef2f5;color:#526572!important;font-size:9px!important;font-weight:800;line-height:1;white-space:nowrap;text-transform:none!important;letter-spacing:0!important}
.result-timeline-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding-right:4px}
.result-timeline-meta>strong{display:inline-flex;align-items:center;gap:2px}
@media(max-width:760px){
  .results-panel-head{flex-direction:column;gap:12px}
  .result-summary-metrics{width:100%;justify-content:flex-start}
  .result-summary-chip{min-height:36px;padding:6px 10px}
}


/* v0.4.3 — UX блока «Требует внимания»: просроченный план дня */
.attention-item.missed-plan-item{
  display:block;
  grid-template-columns:none;
  gap:0;
  padding:12px;
  margin:0 0 9px;
  border:1px solid #f0d9dc;
  border-left:3px solid var(--danger);
  border-radius:12px;
  background:#fffafa;
}
.attention-item.missed-plan-item:hover{background:#fff7f8}
.missed-plan-main{display:block;min-width:0}
.missed-plan-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.missed-plan-meta .task-code{flex:none}
.missed-plan-date{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;background:#f7e8ea;color:#9e3440;font-size:9px;font-weight:700;white-space:nowrap}
.missed-plan-main strong{display:block;font-size:11.5px;line-height:1.42;color:var(--navy);overflow-wrap:anywhere}
.missed-plan-actions{display:grid;grid-template-columns:1fr;gap:7px;margin-top:11px;padding-top:10px;border-top:1px solid #f2e4e6}
.missed-plan-actions form{margin:0;min-width:0}
.missed-today-form .btn{width:100%;min-height:34px}
.missed-date-form{display:grid;grid-template-columns:minmax(0,1fr) 34px;gap:6px;width:100%}
.missed-date-form input[type="date"]{width:100%;min-width:0;min-height:34px;height:34px;padding:5px 8px;border:1px solid #d8e0e5;border-radius:9px;background:#fff;color:var(--text);font-size:11px}
.missed-date-form .mini-icon{width:34px;height:34px}
.missed-dismiss-form{display:flex;justify-content:flex-start}
.missed-dismiss-form .text-action{padding:2px 0;font-size:10.5px;color:#778791}
.missed-dismiss-form .text-action:hover{color:var(--danger)}
@media(max-width:1200px){
  .attention-item.missed-plan-item{max-width:none}
}
@media(max-width:560px){
  .missed-plan-meta{align-items:flex-start;flex-direction:column;gap:5px}
  .missed-plan-date{white-space:normal}
}
