/* Approved Glass / DUTCLUB. Last composition layer; no data or layout-clock changes. */
:root{--bg:#0b1016;--text:#edf0f3;--muted:#b9c3ce;--line:#ffffff26;--gold:#c0d1eb;--green:#bbcd8f;--glass-accent:#c0d1eb;--glass-fog:#466896;--glass-art:url('/glass-flight.webp')}
body{background:var(--bg);color:var(--text);isolation:isolate}body[data-page]{--gold:var(--glass-accent)}
body[data-page=admin]{--glass-art:url('/glass-dome.webp')}
body[data-page=roster]{--glass-art:url('/glass-dome.webp');--glass-accent:#bbcd8f;--glass-fog:#4d7444}
body[data-page=shift],body[data-page=weekly]{--glass-art:url('/glass-door.webp');--glass-accent:#bbcd8f;--glass-fog:#4d7444}
body[data-page=stop]{--glass-art:url('/glass-door.webp');--glass-fog:#bf5956}
body[data-page=orders]{--glass-art:url('/glass-architecture.webp');--glass-fog:#d4a953}
body[data-page=handover]{--glass-art:url('/glass-memory.webp');}
body[data-page=more]{--glass-art:url('/glass-memory.webp')}
body[data-page=menu],body[data-page=menu-admin],body[data-page=recipes]{--glass-art:url('/glass-street.webp');--glass-accent:#dcbb7e;--glass-fog:#d4a953}
body[data-page]:before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:1}
.app-v3{max-width:760px;padding-bottom:125px}.app-header{position:relative}.brand{align-items:flex-start}.brand img{margin:0}.brand small{display:none}.app-header:after{content:'';position:absolute;background:url('/glass-hand.webp') center/contain no-repeat;opacity:.8;pointer-events:none}.avatar{background:#293c32;color:#d4e5c8;border-color:#bbcd8f33}
.glass,.card,.widget,.recipe-card,.supplier-card{background:#14202bbb;border:1px solid #ffffff26;border-radius:26px;box-shadow:inset 0 1px #ffffff06;backdrop-filter:none;-webkit-backdrop-filter:none;padding:20px}.glass p,.card p{overflow-wrap:anywhere}.recipe-card{border-radius:24px}.recipe-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.recipe-thumb{height:120px}.glass-home-group{overflow:hidden}.glass-group-head{display:flex;align-items:center;justify-content:space-between;width:100%;background:none;border:0;border-radius:12px;text-align:left}.glass-group-head span{font-size:13px;flex:none}.main-tasks.closing-grid{grid-template-columns:1fr}.glass-home-group.is-done .glass-group-head span{color:#bbcd8f;font-size:23px}
.check-row,.glass-home-check{cursor:default}.check-row.done,.glass-home-check.done,.glass-privilege{background:linear-gradient(125deg,#213529c4 15%,#739c5557 48%,#1a2c26cc 74%)!important;border-color:#bbcd8f40!important}.done .task-text{text-decoration:none;opacity:1;color:#f0f3e9}.check-button{border-radius:50%;width:32px;height:32px;min-width:32px;min-height:32px;background:#111a1fcc;border-color:#ffffff42}.done .check-button{background:#bbcd8f;color:#17281a;border-color:#bbcd8f}.check-photos{margin-top:8px}.glass-home-check .check-photo{max-width:65px}.glass-home-check .check-photo img{height:45px}.glass-daily{gap:13px;padding:20px!important}.glass-daily .widget-top strong{font-size:18px}.glass-daily progress{overflow:visible}.glass-daily progress::-webkit-progress-value{background:linear-gradient(90deg,#466896,#c0d1eb);}.glass-daily progress::-moz-progress-bar{background:linear-gradient(90deg,#466896,#c0d1eb)}
.timeline:before{height:3px;bottom:4px;background:#ffffff26;border-radius:9px}.timeline:after{content:'';position:absolute;left:5px;bottom:4px;height:3px;width:0;background:linear-gradient(90deg,#466896,#c0d1eb);border-radius:9px;pointer-events:none}.timeline[data-phase='1']:after{width:33%}.timeline[data-phase='2']:after{width:66%}.timeline[data-phase='3']:after{width:calc(100% - 10px)}.timeline i{position:relative;z-index:1}.timeline b{font-size:11px}.timeline small{font-size:10px}.orders-due .fake-button{display:none}.orders-due{min-height:100px;gap:10px}.widget-top strong{font-size:19px}.quick-pair{gap:10px;margin:13px 0 24px}.quick-pair button{min-height:104px;flex-direction:column;align-items:flex-start;justify-content:space-between}.quick-pair button.board-has-active{border-color:#dcbb7eaa!important;box-shadow:inset 0 0 0 1px #dcbb7e24}.quick-pair svg{color:#c0d1eb}.quick-pair [data-go=stop] svg{color:#e5aaa6}.team-person{font-size:14px}
.nav.dock{border-color:#ffffff25;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 10px 24px #0004;grid-template-columns:repeat(5,minmax(0,1fr));}.nav.dock button{color:#c4ced7;}.nav.dock button.active{color:#162330}.dock-indicator{background:#c0d1eb;border:0}.nav.dock svg{width:20px;height:20px}.menu-stack{gap:10px}.menu-stack .wide{border-radius:24px;}.menu-stack svg{color:#c0d1eb}.glass-privilege svg{color:#d4e4b2}
button,.gold{transition:transform 120ms var(--ease-out),background-color 160ms var(--ease-out),border-color 160ms var(--ease-out)}button{border-color:#ffffff2b}.gold{background:var(--glass-accent);color:#15212b;border-color:transparent}.gold:hover{background:var(--glass-accent);filter:brightness(1.06)}input,textarea,select{background:#0b131ccc;border-color:#ffffff30;color:#edf0f3;font-size:16px;border-radius:15px;min-width:0}input::placeholder,textarea::placeholder{color:#abb7c3}input:focus-visible,button:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--glass-accent);outline-offset:3px}.note{background:#182736b3;border-color:#ffffff22;color:#ccd4dc}.tabs button{background:#14202ba8;color:#cad3db}.tabs button.active{background:var(--glass-accent);color:#15222d;border-color:transparent}.order-actions{background:#101b25f5;border-color:#ffffff28;border-radius:25px}.stock-order-row .norm-cell{background:linear-gradient(125deg,#3b32214d,#151c2180);border-color:#dcbb7e55}.quantity-control{background:#0e161e}.order-group-tabs{display:flex;gap:7px;overflow:auto;margin:12px 0;scrollbar-width:thin}.order-group-tabs button{white-space:nowrap;flex:none;font-size:13px;padding:10px 14px}.order-group-tabs button[aria-pressed=true]{background:var(--glass-accent);color:#15212b}.category-heading{color:var(--glass-accent)}.management-footer,.management-head,.editor-footer{background:#101a24f7}dialog{background:#121d27fa;color:#edf0f3;backdrop-filter:none;-webkit-backdrop-filter:none;border-color:#ffffff30}dialog::backdrop{background:#0009;backdrop-filter:blur(3px)}.board-list .glass{background:#19212ad6}.board-list .method,.comment-entry p{white-space:pre-wrap;line-height:1.5;overflow-wrap:anywhere}.card-actions{gap:8px}.card-actions button{min-height:44px}.profile-card{background:#15212bd6}.management-log-detail{display:block;white-space:normal;overflow-wrap:anywhere}.management-log-detail p{white-space:pre-wrap;line-height:1.5}
body[data-page=login]:before{background:linear-gradient(180deg,#080b0d15 0%,#080b0d45 27%,#080b0dec 78%),url('/glass-world.webp') center 35%/cover no-repeat!important}.login-v3{max-width:430px;padding:24px 22px max(20px,env(safe-area-inset-bottom));justify-content:flex-end;gap:12px}.login-v3>.brand{align-self:flex-start;align-items:flex-start;margin:0 0 auto;width:130px}.login-v3 .brand img{width:130px;height:69px;margin:0}.brand-city{color:#d4dfeb!important;letter-spacing:1px!important}.identity-card{background:#101922c9;border-color:#ffffff30;border-radius:27px;padding:20px}.identity-card .avatar.large{width:55px;height:55px;margin:0 auto 9px}.identity-card h1{font-size:24px}.person-select{margin-bottom:15px}.pin-label input{height:48px}.login-submit{border:0;background:#c0d1eb;color:#15212b;padding:10px 12px 10px 20px;border-radius:24px;margin-top:14px}.login-submit:hover{background:#d4e1f2!important}.arrow-disc{background:#162330;color:#c0d1eb;width:36px;height:36px;font-size:22px}.role-link{margin:0;min-height:42px;font-size:13px}.credit{margin:0;font-size:10px;color:#bbc3ca}.login-v3 .brand small{display:none}
body[data-glass-intro='0']:before{background:linear-gradient(#080b0d44,#080b0de0),url('/glass-lim.webp') center/cover no-repeat!important}body[data-glass-intro='0'] #content{min-height:calc(100dvh - 245px);display:flex;flex-direction:column}body[data-glass-intro='0'] .intro-body{margin-top:auto;min-height:0}body[data-glass-intro='0'] .intro-body .glass{background:#111b26c9}.intro-steps{gap:9px;margin-bottom:26px}.intro-steps .active{color:#c0d1eb;border-color:#c0d1eb}body[data-glass-intro='1']{--glass-art:url('/glass-memory.webp')}body[data-glass-intro='2']{--glass-art:url('/glass-door.webp');--glass-accent:#e5aaa6;--glass-fog:#bf5956}
@media(min-width:800px){.app-v3{max-width:820px}.main-tasks.closing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.recipe-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:380px){.app-v3{padding-left:14px;padding-right:14px}.quick-pair{gap:8px}.glass-home-check{padding:12px 8px}.task-text{font-size:13px}.glass-group-head strong{font-size:18px}.nav.dock button{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* 44px touch area for check controls; photo buttons remain independent. */
.glass-home-check .check-button,.check-row .check-button{min-width:44px;min-height:44px;width:44px;height:44px}.glass-home-check{cursor:pointer}

/* Fidelity correction: measured against glass-checklist-forms, selected Glass / Луч / Свет.
   Real content may wrap; control geometry and surfaces follow the approved prototype. */
:root{--glass-ray:linear-gradient(116deg,transparent 8%,rgb(187 205 143 / .04) 21%,rgb(187 205 143 / .31) 38%,rgb(187 205 143 / .13) 48%,transparent 68%),linear-gradient(116deg,transparent 40%,rgb(77 116 68 / .24) 62%,transparent 92%),linear-gradient(100deg,rgb(77 116 68 / .24),rgb(77 116 68 / .21))}
body[data-page=stop]{--glass-accent:#e3a7a4}body[data-page=orders]{--glass-accent:#dcbb7e}body[data-page=handover]{--glass-accent:#cebbda;--glass-fog:#594c93}
body[data-page]:before{background:radial-gradient(ellipse at 100% 40%,color-mix(in srgb,var(--glass-fog) 45%,transparent),transparent 70%),linear-gradient(#000d,#000e),var(--glass-art) center/cover no-repeat!important}
body:not([data-page=login]) .app-v3{padding:0 21px 105px}.app-header{height:78px;padding:8px 3px 4px;box-sizing:border-box}body:not([data-page=roster]) .app-header{min-height:90px}.brand img{width:112px;height:54px}.brand{width:112px}.app-header:after{right:60px;width:28px;height:28px}.profile-button .avatar{width:36px;height:36px;background:#252d38;color:#edf0f3;border-color:#ffffff22}.page-heading>div:first-child{display:flex;flex-direction:column}.page-heading h1{order:-1;font-size:30px;line-height:1.03;margin:0 0 8px;letter-spacing:-.04em}.page-heading .meta{margin:0;font-size:13px;color:#c1c5ce}.page-heading{margin:5px 0 20px}
.glass-home-group{position:relative;isolation:isolate;padding:16px!important;border-radius:28px!important;border:1px solid #ffffff35;background:linear-gradient(125deg,#a4b7cf25,#121822a6);box-shadow:none}.glass-group-head{padding:0;min-height:44px;margin:0 0 8px;gap:10px}.glass-group-head strong{font-size:19px;font-weight:600}.glass-group-head span{color:#c4ccd7}.glass-home-group.is-done{padding-top:12px!important;padding-bottom:12px!important;background:linear-gradient(125deg,#a4b7cf25,#121822a6)}.glass-home-group.is-done:before,.glass-daily.is-done:before,.orders-due.orders-complete:before,.supplier-card.ready:before{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;background:var(--glass-ray);opacity:.72;box-shadow:inset 0 0 0 1px rgb(187 205 143 / .1)}.glass-home-group.is-done .glass-group-head{margin:0}.glass-group-head span{display:inline-flex;align-items:center}.glass-group-head span svg{width:20px;height:20px}.main-tasks{margin:0 0 14px;gap:14px}
.check-row,.glass-home-check{position:relative;isolation:isolate;overflow:visible;display:flex;align-items:center;gap:10px;min-height:44px;padding:6px 8px;margin:0;border:0;border-radius:12px;background:transparent;box-shadow:none}.check-row:before{content:'';position:absolute;inset:0;z-index:-1;border-radius:inherit;pointer-events:none;background:var(--glass-ray);box-shadow:inset 0 0 0 1px rgb(187 205 143 / .12);opacity:0;transition:opacity 180ms var(--ease-out)}.check-row.done,.glass-home-check.done{background:transparent!important;border:0!important;color:#f0f3e9}.check-row .check-button,.glass-home-check .check-button{position:relative;display:grid;place-items:center;padding:0;width:20px;min-width:20px;height:32px;min-height:32px;flex:0 0 20px;font-size:14px;border:0;background:transparent!important;color:#d4e4b2;border-radius:7px;box-shadow:none;animation:none}.check-button:before{content:'';position:absolute;inset:6px 0;border:1px solid #ffffff45;border-radius:7px;pointer-events:none}.check-button:after{content:'';position:absolute;inset:-6px -8px}.done .check-button:before{border-color:#bbcd8fa3;background:#09120c5c;z-index:-1}.task-text{font-size:13px;line-height:1.3}.task-stamp{font-size:10px;line-height:1.3;margin-top:4px;color:#bcc7bc}.check-photos:empty{display:none}.glass-home-check .check-photos{margin-top:4px}.glass-home-check .check-photos:empty{margin:0}
.glass-workblock{overflow:hidden;isolation:isolate;border-radius:30px;border:1px solid #c2d9df66;background:linear-gradient(125deg,#a7c4cb20,#1c2737a8);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 1px #ffffff24,0 14px 35px #0004;margin:0 0 22px}.glass-workblock .glass{border-radius:0;border:0;box-shadow:none}.glass-workblock .glass-daily{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 17px;min-height:108px;padding:17px 20px!important;background:#101a2180;border-bottom:1px solid #ffffff24}.glass-daily .daily-label{grid-column:1;margin-bottom:6px;font-size:11px;color:#d0d3d7}.glass-daily .daily-copy{grid-column:1;font-size:18px;font-weight:600;line-height:1.1;color:#f8f6fa}.glass-daily progress{grid-column:1;width:calc(100% - 17px);margin-top:12px;height:4px;background:rgb(192 209 235 / .1)}.glass-daily progress::-webkit-progress-bar{background:rgb(192 209 235 / .1)}.glass-daily progress::-webkit-progress-value{box-shadow:0 0 9px 1px rgb(192 209 235 / .26)}.glass-daily .daily-count{grid-column:2;grid-row:1 / 4;font-size:17px;color:#c0d1eb;align-self:center;white-space:nowrap}.glass-workblock .orders-due{display:grid;grid-template-columns:19px minmax(0,1fr) auto;gap:5px 12px;min-height:66px;padding:14px 18px;background:transparent;border-bottom:1px solid #ffffff22}.orders-due .widget-top{display:contents}.orders-due .widget-top strong{grid-column:2;grid-row:1;font-size:17px}.orders-due .widget-top small{grid-column:3;grid-row:1 / 3;align-self:center;font-size:19px;color:#c0d1eb}.orders-due>svg{grid-column:1;grid-row:1 / 3;width:19px;height:19px;align-self:center}.orders-due>span:not(.widget-top):not(.fake-button){grid-column:2;font-size:11px;color:#c1c5ce}.glass-workblock .quick-pair{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0}.glass-workblock .quick-pair button{position:relative;min-height:64px;flex-direction:row;justify-content:flex-start;align-items:center;padding:15px;gap:10px;font-size:13px;background:transparent}.glass-workblock .quick-pair button+button{border-left:1px solid #ffffff22}.glass-workblock .quick-pair button.board-has-active{box-shadow:inset 0 -2px #dcbb7e99}.quick-pair .board-widget-icon{display:flex}.glass-workblock .quick-pair svg{width:20px;height:20px}.glass-workblock .quick-pair button>span:nth-child(2){font-size:14px;font-weight:600;line-height:1.15;max-width:87px}.glass-board-count{position:absolute;top:10px;right:12px;font-size:12px;color:#c0d1eb;font-weight:600}.glass-workblock .quick-pair span{min-width:0}.glass-workblock .quick-pair .glass-board-count{flex:none}
.team-widget{background:#19171deb;border-radius:25px;padding:4px 16px}.team-person{padding:13px 0;gap:12px}.team-person .avatar{width:30px;height:30px;font-size:13px}.team-person time{font-size:12px}.section-title{font-size:17px;margin-bottom:12px}body[data-page=home] #content>.wide{background:#19171dcc;border-radius:23px;min-height:58px;font-size:14px}
.nav.dock{background:#18151dee;border-radius:30px;padding:8px 10px 9px;bottom:max(9px,env(safe-area-inset-bottom));width:min(calc(100% - 20px),490px);gap:0}.nav.dock button{min-height:50px;font-size:10px;padding:5px 3px;gap:4px;border-radius:18px}.dock-indicator{left:10px;top:8px;bottom:9px;width:calc((100% - 20px)/5);border-radius:18px}.dock[data-slot="1"] .dock-indicator{transform:translateX(100%)}.dock[data-slot="2"] .dock-indicator{transform:translateX(200%)}.dock[data-slot="3"] .dock-indicator{transform:translateX(300%)}.dock[data-slot="4"] .dock-indicator{transform:translateX(400%)}.menu-stack .wide{background:#17202bba;padding:17px 18px;min-height:58px}.glass-more .wide{gap:10px;text-align:left;justify-content:flex-start}.glass-more .wide span:nth-child(2){flex:1;min-width:0;font-size:14px}.glass-more .wide svg{width:19px;height:19px}.glass-more .wide svg:last-child{width:14px;opacity:.65}.glass-privilege{position:relative;isolation:isolate;overflow:hidden;background:rgb(16 25 22 / .74)!important;border-color:#ffffff26!important;color:#f0f3e9}.glass-privilege:before{content:'';position:absolute;inset:0;border-radius:inherit;background:var(--glass-ray);box-shadow:inset 0 0 0 1px #bbcd8f1f;z-index:-1;pointer-events:none}
body[data-page=shift] #content>section.card,body[data-page=weekly] #content>section.card{padding:16px;border-radius:28px;background:linear-gradient(125deg,#a4b7cf25,#121822a6);border-color:#ffffff35}.card-head h3{font-size:19px}.check-row .task-body{min-width:0}.check-row:has(.check-button:focus-visible){outline:2px solid #c0d1eb;outline-offset:2px}.check-row .check-button:focus-visible{outline:none}
body[data-page=stop] .board-list .glass{background:#2417196b;border-color:#bf59563d;border-radius:20px;padding:17px}body[data-page=handover] .board-list .glass{background:#17202b80;border-radius:24px;border-color:#ffffff26}body[data-page=recipes] .recipe-card{background:linear-gradient(125deg,#5147356b,#1c1916dd);border-color:#c4ac7d40;border-radius:25px;padding:17px 15px;min-height:154px}.recipe-card h3{font-size:18px;line-height:1.1}.recipe-grid{gap:11px}
@media(max-width:650px){body:not([data-page=login]) .app-v3{padding-left:18px;padding-right:18px}body:not([data-page=roster]) .app-header{min-height:78px}}
@media(prefers-reduced-motion:reduce){.check-row:before{transition:none}}
/* Override the old 3px completion marker, not just its lower-specificity base. */
.check-row.done:before{inset:0;width:auto;height:auto;background:var(--glass-ray);border-radius:12px;opacity:1}
/* Orders keep the same inputs and draft controls, with the approved compact product row. */
body[data-page=orders] .stock-order-row{display:grid;grid-template-columns:minmax(0,1fr) 116px;grid-template-areas:'name qty' 'norm qty';gap:5px 12px;padding:18px 0;min-height:92px;border-bottom:1px solid #ffffff24;align-items:center}body[data-page=orders] .stock-order-row .product-name{grid-area:name;font-size:15px;line-height:1.3}body[data-page=orders] .stock-order-row .product-name .meta{font-size:10px;margin-top:4px}body[data-page=orders] .quantity-label,body[data-page=orders] .stock-symbol{display:none}body[data-page=orders] .stock-order-row .quantity-control{grid-area:qty;display:grid;grid-template-columns:34px minmax(0,1fr) 34px;width:116px;min-width:0;border-radius:15px;border:1px solid #ffffff30;background:#0e151dbb;min-height:44px;padding:0;overflow:hidden}body[data-page=orders] .quantity-control button{width:34px;min-width:0;height:44px;min-height:44px;padding:0;border:0;border-radius:0;background:transparent;font-size:22px}body[data-page=orders] .quantity-control input{padding:0;width:100%;min-width:0;height:44px;min-height:44px;border:0;background:none;font-size:16px;text-align:center;border-radius:0}body[data-page=orders] .stock-order-row .norm-cell{grid-area:norm;display:block;padding:0;background:none;border:0;border-radius:0;text-align:left;min-height:0;color:#b8bbc3;font-size:11px}body[data-page=orders] .norm-cell strong{display:inline;font-size:11px;font-weight:500;color:inherit;margin:0 0 0 3px}body[data-page=orders] .norm-cell>span{display:inline;font-size:11px}body[data-page=orders] .order-actions{border-radius:20px;padding:13px;background:#101922f2}
.glass-shift-flow{margin:20px 0 22px}.glass-shift-labels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;font-size:11px;color:#c1c5ce;line-height:1.15}.glass-shift-labels span:nth-child(2){text-align:center;align-self:center}.glass-shift-labels span:last-child{text-align:right}.glass-shift-labels small{display:block;font-size:10px;color:#b9c3d0;margin-top:4px}.glass-shift-track{height:12px;margin:9px 4px 0}.glass-shift-track svg{display:block;overflow:visible}.glass-shift-rail,.glass-shift-fill{stroke-width:4;stroke-linecap:round}.glass-shift-rail{stroke:#ffffff24}.glass-shift-fill{stroke:#c0d1eb}.glass-shift-mark{fill:#5e626a}.glass-shift-mark.reached{fill:#c0d1eb}.glass-shift-foot{display:flex;justify-content:space-between;gap:12px;font-size:11px;color:#b9c3d0;margin-top:6px}.glass-shift-foot span:last-child{text-align:right}
.glass-check-tools{margin:0 0 16px;font-size:12px;color:#bdc8d4}.glass-check-tools summary{cursor:pointer;}.glass-check-tools>label{display:block;max-width:220px;padding:12px 0;font-size:12px}.glass-check-tools .tabs{overflow-x:auto;flex-wrap:nowrap;margin:8px 0}.glass-check-tools .tabs button{flex:none}.glass-check-tools+.card .card-head{align-items:center;margin:0 0 8px;min-height:40px}.glass-check-tools+.card .card-head .sync-time{font-size:13px;color:#c4ccd7}.glass-check-tools+.card .card-head h3{margin:0}
.glass-check-tools+.card .card-head{display:flex;flex-direction:row;justify-content:space-between;padding:0;border:0}.glass-check-tools+.card .card-head .sync-time{display:inline;flex:none}
body[data-page=orders] .norm-cell>.stock-symbol{display:none}

/* Original brand marks and published team times, matching the shared home prototype. */
.nav.dock .glass-nav-brand{width:21px;height:21px;object-fit:contain;flex:none}.nav.dock button.active .glass-nav-brand{filter:invert(1)}
.glass-team-name{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}.glass-team-name strong{font-size:14px;font-weight:600}.glass-team-name small{font-size:11px;color:#b9c3ce}.team-person time{white-space:nowrap}
body[data-page=home] #content>.section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.glass-team-mark{width:34px;height:25px;object-fit:contain;opacity:.72}
body[data-page=home] #content>.wide svg{width:22px;height:22px}

/* A title without a subtitle must not reserve the subtitle gap. */
.page-heading:not(:has(p)) h1{margin-bottom:0}
.glass-more{gap:9px}.glass-more .wide{border-color:#b6d2dc44;color:#f5f5f5}.glass-more .wide svg{color:inherit}

body:not([data-page=login]):not([data-glass-intro]):after{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:url('/glass-skeleton.webp') 114% 82%/220px auto no-repeat;opacity:.045}

/* Checklist disclosure: compact by default, no height animation or hidden focus targets. */
.glass-home-group.is-collapsed{padding-top:12px!important;padding-bottom:12px!important}
.glass-home-group.is-collapsed .glass-group-head{margin-bottom:0}
.glass-group-items[hidden]{display:none!important}
.glass-group-head>span{gap:9px}
.glass-group-chevron{font-size:17px!important;line-height:1;transition:transform 160ms var(--ease-out)}
.glass-group-head[aria-expanded=true] .glass-group-chevron{transform:rotate(180deg)}
@media(prefers-reduced-motion:reduce){.glass-group-chevron{transition:none}}

/* Approved profile: identity card + three quiet rows; live settings use the existing dialog. */
body[data-page=profile]{--glass-art:url('/glass-flight.webp');--glass-fog:#466896;--glass-accent:#c0d1eb}
/* Approved stop rows: rose glass, a lower contour and round line-icon actions. */
body[data-page=stop] .page-heading{flex-wrap:nowrap;align-items:center;justify-content:space-between}
body[data-page=stop] .page-heading>div{min-width:0}
body[data-page=stop] .glass-stop-icon{display:inline-grid;place-items:center;flex:none;width:44px;height:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:#4e272b88;color:var(--glass-accent)}
body[data-page=stop] .glass-stop-icon svg{width:22px;height:22px}
body[data-page=stop] .board-list{gap:9px}
body[data-page=stop] .board-list .glass{border:0;border-bottom:1px solid #bf59563d;box-shadow:none}
body[data-page=stop] .board-list [data-board-card]{position:relative;padding:17px}
body[data-page=stop] .board-list [data-board-card]:has(.glass-stop-resolve)>h2,
body[data-page=stop] .board-list [data-board-card]:has(.glass-stop-resolve)>.method{padding-right:63px}
body[data-page=stop] .board-list h2{font-size:17px;font-weight:600;line-height:1.35;margin:0 0 6px}
body[data-page=stop] .board-list .method{font-size:13px;line-height:1.45;color:#b9c3ce;margin:0 0 9px}
body[data-page=stop] .board-list .meta{font-size:11px;color:#b9c3ce;margin:9px 0 0}
body[data-page=stop] .glass-stop-resolve{position:absolute;right:17px;top:17px;width:52px;height:52px;min-height:52px}
body[data-page=stop] .glass-stop-resolve svg{width:30px;height:30px}
body[data-page=stop] .card-actions{margin-top:9px;gap:8px}
body[data-page=stop] .card-actions button{background:transparent;border-color:#bf59563d}
body[data-page=stop] .card-actions button:not(.danger){color:#e3a7a4}
.glass-profile .profile-card{padding:22px;border:0;border-radius:45% 45% 24px 24px;background:#211c2cdd;box-shadow:none;margin:0 0 20px;text-align:center}
.glass-profile .profile-card .avatar{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 15px;font-size:24px;border-radius:50%;object-fit:cover;background:#363a3f;color:#fff;border:2px solid #000;font-weight:600}
.glass-profile .profile-card img.avatar{display:block}
.glass-profile .profile-card h2{font-size:24px;margin:0 0 6px;font-weight:600;overflow-wrap:anywhere}
.glass-profile .profile-card p{margin:0;color:#b9c3ce;font-size:13px;line-height:1.5}
.glass-profile-row{display:flex;align-items:center;gap:13px;width:100%;min-height:52px;padding:14px 0;border:0;border-bottom:1px solid #5a4e6b;border-radius:0;background:transparent;text-align:left;color:#edf0f3;font-size:15px}
.glass-profile-row>span{flex:1;min-width:0}.glass-profile-row svg{width:22px;height:22px;flex:none}
.glass-profile-install{display:block;width:100%;margin:20px 0 8px;padding:12px 0;border:0;background:transparent;text-align:left;color:#b9c3ce;font-size:13px}
.glass-profile #logout{padding:12px 0;border:0;background:transparent;font-size:13px;color:#c4ccd7;text-align:left;justify-content:flex-start}
.glass-profile-storage[hidden]{display:none!important}
#dialog:has(.glass-profile-pane){padding:22px;background:#141e28;border:1px solid #ffffff26;border-radius:24px}
.glass-profile-pane>.card{background:transparent;border:0;padding:0;margin:0;box-shadow:none}
.glass-profile-pane>.card>h2{display:none}.glass-profile-pane .photo-editor{border:0;padding:0;margin:0}
.glass-profile-pane .schedule-lines p{font-size:13px;line-height:1.5;padding:10px 0}
.glass-profile-pane .meta{font-size:12px;line-height:1.5}
@media(max-width:600px){#dialog:has(.glass-profile-pane){position:fixed;inset:auto 0 0;margin:0;width:100%;max-width:100%;max-height:85dvh;border-radius:24px 24px 0 0;padding-bottom:max(22px,env(safe-area-inset-bottom));overflow:auto}}
@media(hover:hover) and (pointer:fine){.glass-profile-row:hover{background:#ffffff06;border-color:#5a4e6b}}
.glass-profile-pane button:not(.gold){background:#1c2936;border-color:#ffffff26;color:#edf0f3}
@media(hover:hover) and (pointer:fine){.glass-profile-pane button:not(.gold):hover{background:#263646;border-color:#ffffff40}}

/* Approved home-background-review: exact black artwork layer, outside greeting. */
body[data-page=home]:not([data-glass-intro]){background:#000!important;isolation:isolate}
body[data-page=home]:not([data-glass-intro]):before{background:linear-gradient(180deg,#000c 0%,#000e 48%,#000 92%),url('/glass-home-memory.png') 72% 0 / auto 760px no-repeat!important;opacity:.62!important}

/* Black-glass home: neutral surfaces and continuous light; green remains completion. */
body[data-page=home]:not([data-glass-intro]){--home-glass-surface:linear-gradient(125deg,#ffffff16,#161616b8);--home-light:#e9e7e2;--home-muted:#c7c5c0}
body[data-page=home] .glass-home-group,
body[data-page=home] .glass-workblock{background:var(--home-glass-surface);border-color:#ffffff35}
body[data-page=home] .glass-home-group:not(.is-done) .glass-group-head span{color:var(--home-muted)}
body[data-page=home] .glass-workblock .glass-daily{background:#10101080}
body[data-page=home] .glass-daily .daily-count,
body[data-page=home] .orders-due .widget-top small,
body[data-page=home] .glass-board-count,
body[data-page=home] .quick-pair [data-go=handover] svg{color:var(--home-light)}
body[data-page=home] .glass-daily progress{background:#ffffff1a;accent-color:var(--home-light)}
body[data-page=home] .glass-daily progress::-webkit-progress-bar{background:#ffffff1a}
body[data-page=home] .glass-daily progress::-webkit-progress-value{background:linear-gradient(90deg,#8f8d87,var(--home-light));box-shadow:0 0 9px 1px #e9e7e242}
body[data-page=home] .glass-daily progress::-moz-progress-bar{background:linear-gradient(90deg,#8f8d87,var(--home-light));box-shadow:0 0 9px 1px #e9e7e242}
body[data-page=home] .glass-shift-fill{stroke:var(--home-light)}
body[data-page=home] .glass-shift-mark.reached{fill:var(--home-light)}
body[data-page=home] .glass-shift-labels,
body[data-page=home] .glass-shift-labels small,
body[data-page=home] .glass-shift-foot{color:var(--home-muted)}

/* Daily completion uses the same Ray as completed opening/closing groups.
   Isolate the overlay inside the task, not the adjacent handover/stop actions. */
.glass-daily,.orders-due,.supplier-card{position:relative;isolation:isolate}
body[data-page=home] .glass-daily.is-done .daily-count,
body[data-page=home] .orders-due.orders-complete .widget-top small,
.supplier-card.ready .eyebrow{color:#bbcd8f}

/* Keep the 38px disclosure footprint, with a visible control and native keyboard behavior. */
.glass-check-tools summary{display:flex;align-items:center;gap:8px;padding:8px 10px;min-height:38px;border:1px solid #ffffff35;border-radius:12px;background:#ffffff0d;color:#f0efe9;font-size:14px;font-weight:600;line-height:20px;list-style:none}
.glass-check-tools summary::-webkit-details-marker{display:none}
.glass-check-tools summary>span{flex:1;min-width:0}
.glass-check-tools summary>svg{width:18px;height:18px;flex:none}
.glass-check-tools summary>.glass-tools-chevron{width:16px;height:16px}
.glass-check-tools[open] summary>.glass-tools-chevron{transform:rotate(180deg)}
.glass-check-tools summary:focus-visible{outline:2px solid var(--glass-accent);outline-offset:3px}
@media(hover:hover) and (pointer:fine){.glass-check-tools summary:hover{background:#ffffff16;border-color:#ffffff55}}

/* Approved dialog-readable-oct10, calm: ordinary detail/comment/form dialogs.
   Specialized manager/schedule and profile sheets retain their own layouts;
   login and welcome use independent IDs and are not selected here. */
#dialog:not(.management-editor):not(:has(.glass-profile-pane)){
 padding:20px;border-radius:28px;border:1px solid #d3dfe944;
 background:linear-gradient(#090d13d1,#090d13e8),url('/glass-architecture.webp') center/cover,#090d13;
 color:#f4f3f0;backdrop-filter:none;-webkit-backdrop-filter:none;
 box-shadow:inset 0 1px #ffffff18,0 22px 70px #0009;overscroll-behavior:none;
}
#dialog:not(.management-editor):not(:has(.glass-profile-pane))::backdrop{background:#05080c88;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) .dialog-head{padding:12px;border-radius:18px;background:#10141bd9;margin-bottom:14px}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) .dialog-head h2{font-size:24px;line-height:1.2;min-width:0;overflow-wrap:anywhere;margin:0}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) .dialog-head .close{width:44px;height:44px;min-height:44px;flex:none}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) :is(.recipe-detail>section,.comment-entry){padding:16px;border:1px solid transparent;background:#10141bd9;margin:12px 0;border-radius:20px}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) .recipe-detail>section h3:first-child{margin-top:0}
#dialog:not(.management-editor):not(:has(.glass-profile-pane))>p{padding:12px;background:#10141bd9;border-radius:14px}
#dialog:not(.management-editor):not(:has(.glass-profile-pane))>.eyebrow{padding:8px 12px;border-radius:12px;color:#d8be87}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) :is(.method,.ingredient,.comment-entry p){color:#f4f3f0;overflow-wrap:anywhere}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) .ingredient span{min-width:0}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) .ingredient span:last-child{color:#d8be87;font-variant-numeric:tabular-nums}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) :is(input,textarea,select){background:#17191d;color:#f4f3f0}
#dialog:not(.management-editor):not(:has(.glass-profile-pane)) :is(input,textarea)::placeholder{color:#b9c3ce}
