:root{--bg-0:#070a11;--bg-1:#0c1118;--bg-2:#101924;--panel:#141f2b;--panel-alt:#182635;--text-0:#f6fbff;--text-1:#b7c4d2;--text-2:#8ea0b4;--line:#29415b;--accent:#35d8b5;--accent-strong:#3ce3bf;--warn:#ffb454;--danger:#ff7c7c;--radius:16px;--radius-sm:12px;--shadow:0 28px 48px #00000073;--font:"Avenir Next", "Trebuchet MS", Verdana, sans-serif}*{box-sizing:border-box}html,body{background:radial-gradient(1200px 700px at 20% -20%, #35d8b51f, transparent 65%), radial-gradient(900px 500px at 85% 0%, #3584d824, transparent 60%), linear-gradient(180deg, var(--bg-0), var(--bg-1));min-width:320px;color:var(--text-0);font-family:var(--font);margin:0}body,#app{min-height:100vh}button,input,select{font:inherit;color:inherit}.app-shell{width:min(100%,720px);min-height:100vh;margin:0 auto;padding:1rem .9rem 1.2rem}.app-main{min-height:calc(100vh - 2.2rem)}.screen{flex-direction:column;gap:1rem;padding-bottom:5.8rem;display:flex}.screen__header{flex-direction:column;gap:.55rem;display:flex}.screen__header--row{flex-direction:row;justify-content:space-between;gap:1rem}.screen__overline{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.74rem;font-weight:700}.screen__title{margin:0;font-size:clamp(1.3rem,3.6vw,2rem);font-weight:800;line-height:1.2}.screen__subtitle{color:var(--text-1);margin:0;font-size:.92rem}.inline-actions{align-self:flex-start;gap:.45rem;display:flex}.card-list{flex-direction:column;gap:.75rem;display:flex}.inspection-card,.panel{border:1px solid var(--line);border-radius:var(--radius);width:100%;color:var(--text-0);box-shadow:var(--shadow);background:linear-gradient(155deg,#141f2bf2,#101924eb);padding:.9rem}.inspection-card{text-align:left;cursor:pointer;animation:.24s both slide-up}.inspection-card:hover{border-color:#35d8b580}.inspection-card__top{justify-content:space-between;align-items:flex-start;gap:.8rem;display:flex}.inspection-card__title{margin:0;font-size:.98rem;font-weight:700}.inspection-card__date{color:var(--text-2);white-space:nowrap;font-size:.78rem}.inspection-card__stats{color:var(--text-1);gap:.4rem;margin-top:.8rem;font-size:.86rem;display:grid}.inspection-card__stats p{margin:0}.inspection-card__chips{flex-wrap:wrap;gap:.45rem;margin-top:.7rem;display:flex}.chip{letter-spacing:.02em;border:1px solid #0000;border-radius:999px;align-items:center;padding:.25rem .58rem;font-size:.74rem;display:inline-flex}.chip--neutral{color:#cbdae7;background:#8ea0b41f;border-color:#8ea0b442}.chip--good{color:#aff5e4;background:#35d8b52e;border-color:#35d8b561}.chip--progress{color:#ffd59a;background:#ffb45426;border-color:#ffb45459}.panel{margin:0}.panel--empty h1,.panel--empty h2,.panel--empty p{margin:0 0 .6rem}.panel--loading{text-align:center}.sticky-actions{width:min(100%,720px);padding:.75rem .9rem calc(.8rem + env(safe-area-inset-bottom));background:linear-gradient(#070a1100,#070a11f5 35%);margin:0 auto;position:fixed;bottom:0;left:0;right:0}.primary-button,.ghost-button,.icon-button{cursor:pointer;border:1px solid #0000;border-radius:12px;min-height:46px;padding:.6rem .9rem}.primary-button{color:#04170f;background:linear-gradient(180deg, var(--accent-strong), #2cc29f);width:100%;font-weight:700;box-shadow:0 12px 26px #35d8b547}.primary-button--block{width:100%}.ghost-button,.icon-button{color:var(--text-0);background:#b7c4d21a;border-color:#b7c4d238}.sheet{background:0 0;border:none;width:min(100vw,720px);max-width:720px;padding:0}.sheet::backdrop{background:#0000009e}.sheet__panel{border:1px solid var(--line);background:linear-gradient(#141f2bfa,#0c1118fa);border-bottom:none;border-top-left-radius:22px;border-top-right-radius:22px;max-height:min(86vh,800px);margin-top:auto;padding:.9rem;overflow:auto}.sheet__header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.9rem;display:flex}.sheet__title{margin:0;font-size:1.02rem}.sheet__body{gap:.8rem;display:grid}.sheet__actions{margin-top:.45rem}.stack-form{gap:.75rem;display:grid}.field{color:var(--text-1);gap:.38rem;font-size:.84rem;display:grid}.field__input{background:var(--panel-alt);border:1px solid var(--line);border-radius:11px;width:100%;min-height:46px;padding:.62rem .72rem}.filter-row{grid-template-columns:1fr 1fr;gap:.55rem;display:grid}.picker-list{flex-direction:column;gap:.45rem;display:flex}.picker-list__item{text-align:left;border:1px solid var(--line);cursor:pointer;background:#182635ad;border-radius:12px;min-height:48px;padding:.65rem}.picker-empty{color:var(--text-2);margin:0;font-size:.85rem}.progress{background:#b7c4d233;border-radius:999px;width:100%;height:8px;overflow:hidden}.progress__bar{background:linear-gradient(90deg,#5debc8,#34cfac);width:0;height:100%;transition:width .18s}.parameter-sections{gap:.75rem;display:grid}.parameter-section{padding:.8rem}.parameter-section__title{color:var(--text-2);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .7rem;font-size:.83rem}.parameter-list{gap:.5rem;display:grid}.parameter-row{border-top:1px solid #29415b8c;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.54rem 0;display:grid}.parameter-row:first-child{border-top:none}.parameter-row__name{margin:0;font-size:.92rem}.assessment-control{grid-template-columns:repeat(3,minmax(46px,auto));gap:.35rem;display:inline-grid}.assessment-control__button{border:1px solid var(--line);min-width:46px;min-height:44px;color:var(--text-1);cursor:pointer;background:#182635d1;border-radius:10px;font-weight:700}.assessment-control__button--active[data-value=PLUS]{color:#beffef;background:#35d8b53d;border-color:#35d8b5a8}.assessment-control__button--active[data-value=MINUS]{color:#ffd2d2;background:#ff7c7c33;border-color:#ff7c7ca3}.assessment-control__button--active[data-value=NA]{color:#ffe0b6;background:#ffb45433;border-color:#ffb454a3}.sw-toast{left:50%;bottom:calc(5.2rem + env(safe-area-inset-bottom));color:var(--text-0);opacity:0;pointer-events:none;background:#080e16f0;border:1px solid #35d8b559;border-radius:999px;align-items:center;gap:.6rem;padding:.5rem .7rem;transition:opacity .18s,transform .18s;display:inline-flex;position:fixed;transform:translate(-50%)translateY(16px)}.sw-toast--visible{opacity:1;pointer-events:auto;transform:translate(-50%)translateY(0)}@media (width>=740px){.app-shell{padding-top:1.3rem}.sticky-actions{border-radius:18px 18px 0 0}}@keyframes slide-up{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
