.linen-layout{--ln-paper:#fff;--ln-soft:#f4f7fa;--ln-line:#dce5ed;--ln-ink:#19334a;--ln-muted:#61768a;--ln-blue:#2f6fb0;--ln-blue-soft:#e8f1fb;--ln-red:#be3441;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start;color:var(--ln-ink)}
.linen-layout>.linen-card:last-child{grid-column:1/-1}
.linen-card{display:grid;gap:10px;min-width:0}
.linen-card-head{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.linen-card-head h2{margin:0;font-size:1.12rem;color:var(--ln-ink)}
.linen-card-head .small-button{margin:0}
.linen-badge{padding:3px 10px;border-radius:999px;background:var(--ln-blue-soft);color:var(--ln-blue);font-size:.76rem;font-weight:700}
.linen-label{margin:6px 0 0;font-size:.8rem;font-weight:700;color:var(--ln-muted)}
.linen-chips,.linen-segment{display:flex;gap:8px;flex-wrap:wrap}
.linen-chip{display:inline-flex;gap:8px;align-items:center;min-height:38px;padding:7px 14px;border:1px solid var(--ln-line);border-radius:999px;background:var(--ln-paper);color:var(--ln-ink);font:inherit;font-size:.86rem;font-weight:600;cursor:pointer}
.linen-chip small{min-width:22px;padding:1px 7px;border-radius:999px;background:var(--ln-soft);color:var(--ln-muted);font-size:.74rem;text-align:center;font-variant-numeric:tabular-nums}
.linen-chip:hover,.linen-chip:focus-visible{border-color:var(--ln-blue)}
.linen-chip.selected{background:var(--ln-blue);border-color:var(--ln-blue);color:#fff}
.linen-chip.selected small{background:#ffffff33;color:#fff}
.linen-days .linen-chip{min-width:48px;justify-content:center;padding:7px 10px}
.linen-text{width:100%;min-height:92px;resize:vertical;font:inherit;line-height:1.45}
.linen-input{max-width:220px}
.linen-row{display:flex;gap:10px;justify-content:space-between;align-items:center;flex-wrap:wrap}
.linen-link{padding:0;border:0;background:none;color:var(--ln-blue);font:inherit;font-size:.82rem;text-decoration:underline;cursor:pointer}
.linen-muted{color:var(--ln-muted);font-size:.8rem;margin:0}
.linen-preview{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:1px solid #bcd5ee;border-left:4px solid var(--ln-blue);border-radius:12px;background:var(--ln-blue-soft)}
.linen-preview-dot{flex:0 0 10px;height:10px;margin-top:5px;border-radius:50%;background:var(--ln-blue)}
.linen-preview small{display:block;color:var(--ln-blue);font-weight:700;font-size:.74rem}
.linen-preview p{margin:3px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:.88rem}
.linen-submit{justify-self:start;margin:4px 0 0}
.linen-form{display:grid;gap:8px;padding:14px;border:1px dashed var(--ln-blue);border-radius:14px;background:var(--ln-soft)}
.linen-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.linen-actions button{margin:0}
.linen-schedule{display:flex;gap:14px;justify-content:space-between;align-items:flex-start;padding:12px 14px;border:1px solid var(--ln-line);border-left:4px solid var(--ln-blue);border-radius:12px;background:var(--ln-paper)}
.linen-schedule.paused{border-left-color:var(--ln-line);opacity:.78}
.linen-schedule-main{display:grid;gap:3px;min-width:0}
.linen-schedule-main strong{font-size:.92rem}
.linen-schedule-main span{font-size:.8rem;color:var(--ln-muted)}
.linen-schedule-main .linen-next{color:var(--ln-blue);font-weight:600}
.linen-schedule-main p{margin:4px 0 0;font-size:.82rem;white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.linen-schedule-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}
.linen-schedule-actions .small-button{margin:0}
.linen-switch{position:relative;width:46px;height:26px;padding:0;border:0;border-radius:999px;background:#c6d3de;cursor:pointer;flex:0 0 auto}
.linen-switch span{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0003;transition:transform .18s}
.linen-switch.on{background:var(--ln-blue)}
.linen-switch.on span{transform:translateX(20px)}
.linen-empty{margin:0;padding:14px;border:1px dashed var(--ln-line);border-radius:12px;color:var(--ln-muted);font-size:.86rem}
.linen-error{margin:0;color:var(--ln-red)}
.linen-history{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.linen-history-row{display:grid;grid-template-columns:200px minmax(0,1fr) auto;gap:12px;align-items:center;padding:9px 12px;border:1px solid var(--ln-line);border-radius:10px;font-size:.84rem}
.linen-history-row.failed{border-color:#f0b9be;background:#fff5f6}
.linen-history-time{color:var(--ln-muted);font-variant-numeric:tabular-nums}
.linen-history-count{font-weight:700;color:var(--ln-blue);white-space:nowrap}
.linen-history-row.failed .linen-history-count{color:var(--ln-red);white-space:normal}
@media (max-width:980px){.linen-layout{grid-template-columns:1fr}}
@media (max-width:640px){
  .linen-schedule{flex-direction:column}
  .linen-schedule-actions{justify-content:flex-start}
  .linen-history-row{grid-template-columns:1fr;gap:3px}
  .linen-input{max-width:none;width:100%}
}
html[data-crew-mode=dark] .linen-layout{--ln-paper:#16232e;--ln-soft:#1d2d3a;--ln-line:#33495b;--ln-ink:#e5edf5;--ln-muted:#a9bccb;--ln-blue:#7fb6ee;--ln-blue-soft:#1b3550;--ln-red:#ff8a95}
html[data-crew-mode=dark] .linen-chip.selected{color:#0f2234}
html[data-crew-mode=dark] .linen-preview{border-color:#2f5577}
html[data-crew-mode=dark] .linen-history-row.failed{background:#3a1d23;border-color:#6b3540}
html[data-crew-mode=accessible] .linen-layout{--ln-paper:#fff;--ln-soft:#fff;--ln-line:#000;--ln-ink:#000;--ln-muted:#000;--ln-blue:#003f8a;--ln-blue-soft:#fff;font-size:1.05rem}
html[data-crew-mode=accessible] .linen-chip,html[data-crew-mode=accessible] .linen-schedule,html[data-crew-mode=accessible] .linen-history-row{border-width:2px}
