:root{
  --bg:#f4f9fc;--card:#fff;--ink:#13314b;--muted:#6a8194;--line:#d7e6ef;--primary:#0b7fa6;--primary2:#075f7d;
  --soft:#eaf6fb;--green:#1f9d68;--amber:#d59c16;--red:#cf4b59;--shadow:0 18px 50px rgba(24,73,101,.10);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:linear-gradient(180deg,#f8fcfe 0,#eef6fa 100%);color:var(--ink)}
button,input,textarea,select{font:inherit}button{cursor:pointer}.shell{min-height:100vh}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px 22px;background:rgba(255,255,255,.94);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:11px;font-weight:800}.mark{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--primary);color:white;font-size:24px;box-shadow:0 8px 18px rgba(11,127,166,.25)}.status{font-size:14px;color:var(--muted)}
.main{width:min(1180px,calc(100% - 28px));margin:24px auto 70px}.hero{display:grid;grid-template-columns:1.25fr .75fr;gap:18px;align-items:stretch}.card{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:var(--shadow)}.hero-main{padding:26px}.hero-main h1{font-size:clamp(28px,4vw,44px);margin:10px 0 8px;line-height:1.05}.hero-main p{margin:0;color:var(--muted);font-size:17px;line-height:1.5}.badge{display:inline-flex;padding:7px 11px;border-radius:999px;background:var(--soft);color:var(--primary2);font-weight:800;font-size:12px;letter-spacing:.05em;text-transform:uppercase}.hero-side{padding:22px;display:flex;flex-direction:column;gap:14px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.quick{background:#f7fbfd;border:1px solid var(--line);border-radius:16px;padding:14px}.quick span{display:block;font-size:12px;color:var(--muted)}.quick strong{font-size:24px;display:block;margin-top:3px}.warning{font-size:13px;line-height:1.45;background:#fff8e8;border:1px solid #f1d998;border-radius:16px;padding:12px;color:#6c5616}
.toolbar{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.btn{border:0;border-radius:14px;padding:11px 15px;font-weight:800}.btn.primary{background:var(--primary);color:white}.btn.secondary{background:white;border:1px solid var(--line);color:var(--ink)}.btn.danger{background:#fff0f1;color:#9d2f3a;border:1px solid #f2c6ca}.btn.small{padding:8px 11px;font-size:14px}.btn:disabled{opacity:.55;cursor:not-allowed}
.meta{padding:20px;margin-top:18px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}.field label{font-weight:800;font-size:14px}.field small{color:var(--muted)}input,textarea,select{width:100%;border:1px solid #cddfe9;border-radius:13px;background:white;color:var(--ink);padding:12px 13px;outline:none}textarea{min-height:92px;resize:vertical;line-height:1.45}input:focus,textarea:focus,select:focus{border-color:#5bb4cf;box-shadow:0 0 0 3px rgba(91,180,207,.15)}
.section{margin-top:18px;padding:20px}.section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.section h2{margin:0 0 4px;font-size:23px}.section-head p{margin:0;color:var(--muted)}.question{border-top:1px solid var(--line);padding:16px 0}.question:first-of-type{border-top:0}.qtop{display:grid;grid-template-columns:1fr 200px;gap:12px;align-items:start}.qtitle{font-weight:800;line-height:1.35}.priority{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.pill{border:1px solid var(--line);background:white;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800}.pill.active.must{background:#e8f6ef;color:#13724b;border-color:#bde4d0}.pill.active.nice{background:#fff7df;color:#875f00;border-color:#edd68b}.pill.active.no{background:#fff0f1;color:#9a3540;border-color:#efc4c9}.pill.active.open{background:#eef5f9;color:#426277;border-color:#d7e6ef}.question textarea{margin-top:10px;min-height:78px}.hint{font-size:13px;color:var(--muted);margin-top:6px}.rating{display:flex;gap:7px;flex-wrap:wrap}.rating button{width:42px;height:42px;border-radius:12px;border:1px solid var(--line);background:white;font-weight:800}.rating button.active{background:var(--primary);color:white;border-color:var(--primary)}
.observe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.task{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fbfdfe}.task label{display:flex;gap:10px;font-weight:800}.task textarea{margin-top:10px;min-height:72px}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.summary-box{border:1px solid var(--line);border-radius:16px;background:#f9fcfd;padding:14px}.summary-box span{display:block;color:var(--muted);font-size:12px}.summary-box strong{font-size:24px}.history{margin-top:18px}.history-item{display:flex;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding:13px 0}.history-item:first-child{border-top:0}.history-meta{color:var(--muted);font-size:13px}.footer{text-align:center;color:var(--muted);font-size:13px;padding:26px}.empty{color:var(--muted);text-align:center;padding:24px}.autosave{color:var(--green);font-size:13px;font-weight:700}.sticky-actions{position:sticky;bottom:12px;display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding:10px;border-radius:18px;background:rgba(255,255,255,.92);border:1px solid var(--line);backdrop-filter:blur(10px)}
@media(max-width:800px){.hero{grid-template-columns:1fr}.grid,.observe{grid-template-columns:1fr}.field.full{grid-column:auto}.qtop{grid-template-columns:1fr}.priority{justify-content:flex-start}.summary-grid{grid-template-columns:repeat(2,1fr)}.main{width:min(100% - 18px,1180px)}.topbar{padding:10px 12px}.sticky-actions{justify-content:stretch;flex-wrap:wrap}.sticky-actions .btn{flex:1}}
@media print{body{background:white}.topbar,.toolbar,.sticky-actions,.history,.warning{display:none!important}.main{width:100%;margin:0}.card{box-shadow:none;border:0;border-radius:0}.hero{display:block}.hero-side{display:none}.section,.meta,.hero-main{padding:10px 0}.question{break-inside:avoid}.question textarea{border:0;padding:0;min-height:auto;height:auto;overflow:visible}.priority button{display:none}.priority button.active{display:inline-block}.footer{display:none}}
