/* Smoke journal uses the shared WORKTIME spacing, fields and semantic palette */
#smoke-panel:not([hidden]) { display:grid; gap:20px; }
.smoke__head,.smoke__history-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.smoke__head h2,.smoke__history-head h3,.smoke__head p { margin:0; }
.smoke__head > div { display:grid; gap:8px; }
.smoke__current,.smoke__row,.smoke__audit-entry { border:1px solid var(--wt-border,#dce8e4); background:var(--wt-surface,#fff); border-radius:16px; padding:20px; }
.smoke__current { display:grid; gap:12px; text-align:center; }
.smoke__current--active { background:var(--wt-success-soft,#e5f5e9); border-color:var(--wt-success-border,#bddfd2); }
.smoke__current p,.smoke__row p,.smoke__audit-entry p,#smoke-list > p { margin:0; }
#smoke-timer { display:block; font-size:32px; font-variant-numeric:tabular-nums; color:var(--wt-success-text,#174a44); }
#smoke-mark { width:100%; max-width:none; }
.smoke__navigation { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; align-items:center; gap:12px; }
.smoke__arrow { display:flex; justify-content:center; align-items:center; padding:0; width:44px; height:44px; }
.smoke__arrow svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2; }
#smoke-day { text-align:center; justify-content:center; min-height:44px; padding:10px 12px; }
#smoke-list,#smoke-audit-list { display:grid; gap:12px; }
.smoke__row,.smoke__audit-entry { display:grid; gap:12px; overflow-wrap:anywhere; }
.smoke__row-head { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; }
.smoke__row p { font-variant-numeric:tabular-nums; }
.smoke__row--cancelled,.smoke__hint { color:var(--wt-muted,#61706b); }
.smoke__actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.smoke__actions button,#smoke-mark { display:flex; align-items:center; justify-content:center; min-height:44px; margin:0; text-align:center; }
#smoke-feedback { margin:0; padding:14px 16px; border:1px solid var(--wt-border,#dce8e4); border-radius:14px; background:var(--wt-surface,#fff); color:var(--wt-text,#17232a); }
#smoke-feedback[data-tone="warning"] { background:var(--wt-warning-soft,#fff1c7); color:var(--wt-warning-text,#775900); border-color:var(--wt-warning-border,#e7ce86); }
#smoke-feedback[data-tone="error"] { background:var(--wt-error-soft,#fff1f2); color:var(--wt-error-text,#a52a2a); border-color:var(--wt-error-border,#e6a5a5); }
#smoke-feedback[data-tone="success"] { background:var(--wt-success-soft,#e5f5e9); color:var(--wt-success-text,#174a44); border-color:var(--wt-success-border,#bddfd2); }
.smoke__hint { font-size:13px; }
.smoke__form,#smoke-times { display:grid; gap:16px; }
.smoke__form label,.smoke__datetime { display:grid; gap:8px; margin:0; min-width:0; }
.smoke__datetime-fields { align-items:end; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; }
.smoke__datetime-fields input { min-height:var(--ui-field-height,44px); padding:var(--ui-field-padding,10px 12px); }
#smoke-panel [hidden],#smoke-editor [hidden] { display:none !important; }
@media(max-width:600px) {
 .smoke__head { align-items:flex-start; flex-wrap:wrap; }
 .smoke__current,.smoke__row,.smoke__audit-entry { padding:16px; }
 .smoke__actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .smoke__actions button:last-child { grid-column:1/-1; }
 .smoke__datetime-fields { grid-template-columns:minmax(0,1fr); }
}

/* Shared separation from module navigation and compact mobile hierarchy */
#smoke-panel:not([hidden]) { border-top:1px solid var(--wt-border,#dce8e4); padding-top:20px; margin-top:20px; }
.smoke__head .section-label { font-size:12px; line-height:1.4; }
#smoke-name { font-size:16px; font-weight:700; }
.smoke__current { gap:8px; }
#smoke-started { display:grid; gap:4px; font-size:13px; color:var(--wt-muted,#61706b); }
#smoke-count { font-size:16px; line-height:1.4; font-weight:600; }
.smoke__actions { grid-template-columns:repeat(2,minmax(0,1fr)); }
.smoke__actions button:last-child { grid-column:auto; }
@media(max-width:600px) {
 .smoke__head { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
 #smoke-add { width:100%; }
 #smoke-timer { font-size:28px; }
}

/* Start uses the standard journal sheet and its independent body scroll */
html.app-ui body #smoke-begin { padding:0; }
html.app-ui body #smoke-begin .journal-shift-modal__sheet > .app-modal__header { margin:0; }
.smoke__begin-body { display:grid; align-content:start; gap:20px; }
.smoke__begin-field { display:grid; gap:8px; color:var(--wt-text,#17232a); }
.smoke__begin-field strong { display:block; padding:12px; border:1px solid var(--wt-border,#dce8e4); border-radius:14px; font-size:20px; font-variant-numeric:tabular-nums; }
#smoke-begin-submit { width:100%; display:flex; justify-content:center; align-items:center; min-height:44px; }
#smoke-begin [hidden] { display:none !important; }

/* Editor shares the same sheet contract as start and journal forms */
html.app-ui body #smoke-editor { padding:0; }
html.app-ui body #smoke-editor .journal-shift-modal__sheet > .app-modal__header { margin:0; }
#smoke-editor .smoke__form { align-content:start; gap:16px; }
#smoke-editor .smoke__date-field { display:grid; gap:8px; min-width:0; }
#smoke-editor .smoke__datetime-fields :is(label,.smoke__date-field) > span { font-size:13px; font-weight:400; color:var(--wt-text,#17232a); }
#smoke-editor .smoke__datetime-fields :is(input,button) { box-sizing:border-box; width:100%; height:44px; min-height:44px; padding:10px 12px; border:1px solid var(--wt-success-border,#bddfd2); border-radius:14px; background:var(--wt-surface,#fff); color:var(--wt-text,#17232a); font:inherit; font-weight:400; text-align:left; }
#smoke-editor textarea { min-height:88px; resize:vertical; }
#smoke-editor .modal-actions { margin:0; padding:0; gap:12px; }

/* Read-only journal contains only visible content, without action placeholders */
.smoke--reader .smoke__head { display:block; }
#smoke-editor .smoke__time-field { display:grid; gap:8px; min-width:0; }
#smoke-editor .smoke__time-field > span { font-size:13px; font-weight:400; color:var(--wt-text,#17232a); }
#smoke-editor .smoke__fixed-time { display:flex; align-items:center; height:44px; box-sizing:border-box; padding:0 8px; border:1px solid var(--wt-success-border,#bddfd2); border-radius:14px; background:var(--wt-surface,#fff); }
#smoke-editor .smoke__fixed-time input { width:44px; min-width:0; height:42px; min-height:42px; padding:0 4px; border:0; border-radius:8px; background:transparent; text-align:center; font:inherit; font-variant-numeric:tabular-nums; }
#smoke-editor .smoke__fixed-time > span { flex:0 0 auto; color:var(--wt-text,#17232a); }
