:root{color:#17212b;background:#edf0f3;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px}*{box-sizing:border-box}*:before,*:after{box-sizing:border-box}html{background:#edf0f3;max-width:100%;overflow-x:hidden;overflow-x:clip;width:100%}body{margin:0;max-width:100%;overflow-x:hidden;overflow-x:clip;overscroll-behavior-y:contain;-webkit-tap-highlight-color:transparent;width:100%}button,input,select{font:inherit;max-width:100%;min-width:0}button{min-width:0;touch-action:manipulation}main{min-height:100vh;max-width:100%;overflow-x:hidden;overflow-x:clip;padding-bottom:calc(64px + env(safe-area-inset-bottom));width:100%}#root{max-width:100%;overflow-x:hidden;overflow-x:clip;width:100%}img{max-width:100%}.topbar{align-items:stretch;background:#fff;border-bottom:1px solid #d8dee6;display:grid;gap:14px;padding:calc(14px + env(safe-area-inset-top)) 16px 14px;position:sticky;top:0;z-index:5;max-width:100vw;min-width:0;width:100%}.title-block{min-width:0}h1{font-size:24px;line-height:1.1;margin:0 0 6px}h2{align-items:center;display:flex;font-size:17px;gap:8px;margin:0 0 16px;min-width:0}p{margin:0;min-width:0}.topbar p{align-items:center;color:#596675;display:flex;flex-wrap:wrap;font-size:13px;gap:6px;line-height:1.35}.status-line span:not(.status-dot){min-width:0;overflow-wrap:anywhere}.status-dot{border-radius:999px;display:inline-flex;flex:0 0 auto;height:10px;width:10px}.status-dot.online{background:#1f8a6b}.status-dot.offline{background:#b9404c}.device-picker{display:grid;gap:6px;min-width:0}.logout-button{background:#fff;border:1px solid #c7d0da;border-radius:8px;color:#384656;cursor:pointer;min-height:40px;padding:8px 12px}.device-picker span,label{color:#596675;font-size:13px}input,select{background:#fff;border:1px solid #c7d0da;border-radius:8px;color:#17212b;min-height:44px;padding:10px 12px;width:100%}.tabs{background:#fffffff5;border-top:1px solid #d8dee6;bottom:0;display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr));left:0;padding:6px 8px calc(6px + env(safe-area-inset-bottom));position:fixed;right:0;box-sizing:border-box;max-width:100vw;min-width:0;overflow:hidden;width:auto;z-index:10}.tabs button,.primary,.secondary{align-items:center;border:1px solid #c7d0da;border-radius:8px;cursor:pointer;display:inline-flex;gap:8px;justify-content:center;min-height:44px;padding:10px 12px}.tabs button{background:#fff;color:#384656;flex-direction:column;font-size:10px;gap:2px;line-height:1.1;min-height:48px;min-width:0;padding:5px 4px;overflow:hidden;overflow-wrap:anywhere;white-space:normal;width:100%}.tabs button svg{flex:0 0 auto}.tabs button.active,.primary{background:#236c5c;border-color:#236c5c;color:#fff}.primary{width:100%}.secondary{background:#fff;color:#384656;margin-top:12px;width:100%}.local-links{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:12px;min-width:0}.local-links a{align-items:center;background:#fff;border:1px solid #c7d0da;border-radius:8px;color:#384656;display:inline-flex;justify-content:center;min-height:40px;min-width:0;overflow-wrap:anywhere;padding:8px 10px;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.5}.action-note{margin-top:10px}.next-feed{background:#f3faf7;border:1px solid #cfe8dd;border-radius:8px;display:grid;gap:6px;padding:14px}.next-feed strong{font-size:28px;line-height:1}.next-feed span{color:#17212b;font-weight:700}.next-feed small{color:#596675}.save-top{margin-bottom:14px}.draft-note{color:#75510f;font-size:13px;margin:-4px 0 10px}.sync-note{align-items:flex-start;border:1px solid #edf0f3;border-radius:8px;display:flex;gap:10px;margin-bottom:14px;padding:10px 12px;min-width:0}.sync-note span:last-child{color:#596675;font-size:13px;line-height:1.35;min-width:0;overflow-wrap:normal;word-break:normal}.sync-note span:last-child strong,.sync-note span:last-child small{display:block}.sync-note span:last-child strong{color:#596675;font-weight:500;-webkit-hyphens:auto;hyphens:auto}.sync-note span:last-child small{margin-top:2px}.sync-note.ok{background:#f4fbf8}.sync-note.warn{background:#fffaf0}.sync-note.bad{background:#fff5f6}.notice{background:#dff3eb;border:1px solid #9ccdb9;border-radius:8px;color:#17483d;margin:14px 16px 0;padding:12px;max-width:calc(100vw - 32px)}.login-page{align-items:center;display:grid;min-height:100vh;padding:calc(20px + env(safe-area-inset-top)) 16px calc(20px + env(safe-area-inset-bottom))}.login-panel{background:#fff;border:1px solid #d8dee6;border-radius:8px;margin:0 auto;max-width:420px;padding:22px;width:100%}.login-panel h1{font-size:28px}.login-panel p{color:#596675;margin-bottom:18px}.login-form{display:grid;gap:14px}.grid{display:grid;gap:14px;grid-template-columns:1fr;max-width:100%;min-width:0;overflow-x:clip;padding:14px 16px 18px;width:100%}.settings-status-grid{padding-top:0}.panel{background:#fff;border:1px solid #d8dee6;border-radius:8px;max-width:100%;min-width:0;padding:16px}.panel.wide{margin:14px 16px 18px;max-width:calc(100vw - 32px)}.metric{align-items:baseline;border-bottom:1px solid #edf0f3;display:flex;justify-content:space-between;gap:12px;min-width:0;padding:10px 0}.metric span{min-width:0}.metric span,.muted,small{color:#667484}.metric strong{font-size:15px;min-width:0;overflow-wrap:anywhere;text-align:right;word-break:break-word}.form-row,.settings-grid{display:grid;gap:12px;grid-template-columns:1fr;margin-bottom:14px;min-width:0}.quick-feed{align-items:end;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) minmax(96px,.75fr);min-width:0}.quick-feed label{display:grid;gap:6px;min-width:0}.quick-feed .primary{margin-bottom:0}.form-row label,.settings-grid label{display:grid;gap:6px}.table{display:grid;gap:10px;margin-bottom:14px;min-width:0}.slot-row{align-items:end;border:1px solid #edf0f3;border-radius:8px;display:grid;column-gap:8px;row-gap:6px;grid-template-columns:44px minmax(92px,1fr) minmax(64px,.72fr);min-width:0;overflow:hidden;padding:10px}.slot-row label:not(.check){display:grid;gap:5px;min-width:0}.check{align-items:center;align-self:stretch;display:grid;gap:5px;justify-items:center;min-height:0;width:100%}.check span,.slot-row label:not(.check){font-size:12px;line-height:1.15}.check input{min-height:22px;width:22px}.slot-row input{box-sizing:border-box;font-size:16px;min-height:38px;min-width:0;padding:7px 6px;width:100%}.slot-row input[type=time]{-moz-appearance:none;appearance:none;-webkit-appearance:none;text-align:center}.slot-amount input{text-align:left}.event{border-bottom:1px solid #edf0f3;display:grid;gap:5px;grid-template-columns:1fr;min-width:0;padding:12px 0}.event.danger{color:#9f2936}.event.warn{color:#875f13}.event.compact{padding-top:0}.latest-capture{align-items:center;background:#fff;border:1px solid #edf0f3;border-radius:8px;color:inherit;cursor:pointer;display:grid;gap:10px;grid-template-columns:96px 1fr;margin-top:12px;padding:8px;text-align:left;width:100%;min-width:0}.latest-capture img{aspect-ratio:4 / 3;background:#edf0f3;border-radius:6px;display:block;object-fit:cover;width:100%}.latest-capture span{display:grid;gap:4px;min-width:0}.feed-card{border:1px solid #edf0f3;border-radius:8px;margin-bottom:10px;min-width:0;padding:12px}.feed-main{display:grid;gap:5px;min-width:0}.feed-captures{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:10px;min-width:0}.feed-capture{background:transparent;border:0;color:inherit;cursor:pointer;display:grid;gap:4px;min-width:0;padding:0;text-align:left;text-decoration:none}.feed-capture img{aspect-ratio:4 / 3;background:#edf0f3;border-radius:6px;display:block;object-fit:cover;width:100%}.feed-capture span{color:#667484;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.capture-grid{display:grid;gap:12px;grid-template-columns:1fr;min-width:0}.capture-card{background:#fff;border:1px solid #edf0f3;border-radius:8px;color:inherit;cursor:pointer;display:grid;gap:7px;overflow:hidden;padding-bottom:10px;text-align:left;text-decoration:none;min-width:0}.capture-card img{aspect-ratio:4 / 3;background:#edf0f3;display:block;object-fit:cover;width:100%}.capture-card span,.capture-card small{display:block;min-width:0;overflow-wrap:anywhere;padding:0 10px}.capture-card span{font-weight:700}.capture-modal{align-items:center;background:#101820d1;display:grid;top:0;right:0;bottom:0;left:0;padding:calc(14px + env(safe-area-inset-top)) 14px calc(14px + env(safe-area-inset-bottom));position:fixed;max-width:100vw;overflow:hidden;z-index:30}.capture-modal-body{background:#fff;border-radius:8px;display:grid;gap:10px;margin:0 auto;max-height:94vh;max-width:960px;overflow:hidden;position:relative;width:100%;min-width:0}.capture-modal-body img{background:#17212b;display:block;max-height:72vh;object-fit:contain;width:100%}.modal-close{align-items:center;background:#fffffff0;border:1px solid #c7d0da;border-radius:999px;color:#17212b;cursor:pointer;display:inline-flex;height:42px;justify-content:center;position:absolute;right:10px;top:10px;width:42px}.capture-meta{display:grid;gap:4px;padding:0 14px 14px}.capture-meta span{color:#667484;font-size:13px}.command{align-items:start;border-bottom:1px solid #edf0f3;display:grid;gap:6px;grid-template-columns:minmax(0,1fr);min-width:0;padding:12px 0}.command>*{min-width:0}.command small{color:#8a95a5}.command.quiet{opacity:.72}.maintenance-section{border-top:1px solid #edf0f3;margin-top:24px;padding-top:16px}.maintenance-section h3{align-items:center;display:flex;font-size:16px;gap:8px;margin-bottom:10px}.danger-action{border-color:#e7a7b0;color:#8a1f2d}.badge{border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;justify-content:center;max-width:100%;min-width:0;overflow-wrap:anywhere;padding:4px 8px;white-space:normal;text-transform:uppercase}.sync-note .badge{flex:0 0 auto}.audit-row{align-items:start;border-bottom:1px solid #edf0f3;display:grid;gap:6px;grid-template-columns:minmax(0,1fr);min-width:0;padding:12px 0}.audit-action{min-width:0;overflow-wrap:anywhere}.audit-description{color:#667386;min-width:0;overflow-wrap:anywhere}.badge.ok{background:#dff3eb;color:#17483d}.badge.warn{background:#fff0cc;color:#75510f}.badge.bad{background:#f8d7dc;color:#8a1f2d}@media(min-width:980px){main{padding-bottom:0}.topbar{align-items:center;display:flex;justify-content:space-between;padding:18px 28px}.device-picker{min-width:220px}.tabs{border-bottom:1px solid #d8dee6;border-top:0;bottom:auto;display:flex;gap:8px;overflow-x:auto;padding:10px 28px;position:sticky;top:80px}.tabs button{flex-direction:row;font-size:14px;gap:8px;min-height:42px;padding:8px 12px}.primary,.secondary{width:auto}.notice{margin:18px 28px 0}.grid{gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 28px 28px}.panel{padding:18px}.panel.wide{margin:18px 28px 28px}.form-row,.settings-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.slot-row{align-items:center;border:0;border-bottom:1px solid #edf0f3;border-radius:0;grid-template-columns:120px 160px 110px;padding:8px 0}.slot-row select,.check{grid-column:auto}.check{width:auto}.event{align-items:center;gap:8px;grid-template-columns:1fr 160px 180px;padding:10px 0}.feed-card{align-items:start;grid-template-columns:1fr 280px;padding:12px}.feed-main{min-width:0}.feed-captures{margin-top:0}.capture-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.command{gap:8px;grid-template-columns:minmax(92px,auto) minmax(160px,.7fr) minmax(0,1fr) minmax(90px,auto);padding:10px 0}.command small{grid-column:auto}.audit-row{align-items:center;grid-template-columns:minmax(82px,auto) minmax(82px,auto) minmax(160px,.8fr) minmax(0,1.2fr) minmax(120px,auto);padding:10px 0}}@media(min-width:1180px){.grid{grid-template-columns:repeat(4,minmax(0,1fr))}.settings-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
