/* arkisto-ohje: sivun omat sisältötyylit (pienoismallit). Poistuvat, kun pienoismallit korvataan kaappauksilla. */
:root{--ar:#a16207; --ar-dark:#854d0e; --ar-soft:#fcd34d; --ar-deep:#713f12; --ink:#1e293b; --muted:#475569; --soft:#64748b; --faint:#94a3b8; --line:#e2e8f0; --line2:#cbd5e1; --card:#fafbfc; --help-bg:#fefce8; --help-line:#fcd34d; --help-ink:#854d0e; --warn-bg:#fef3c7; --warn-line:#f59e0b; --warn-ink:#92400e; --danger-bg:#fef2f2; --danger-line:#f87171; --danger-ink:#991b1b}
h3.sub{font-size:1.12em; margin:24px 0 8px; color:var(--ink)}
.callout{background:var(--help-bg); border-left:4px solid var(--help-line); color:var(--help-ink); padding:12px 16px; border-radius:8px; margin:16px 0; font-size:.95em;}
.callout.warn{background:var(--warn-bg); border-left-color:var(--warn-line); color:var(--warn-ink)}
.callout.danger{background:var(--danger-bg); border-left-color:var(--danger-line); color:var(--danger-ink)}
ul.clean{margin:10px 0; padding-left:22px}
ul.clean li{margin:6px 0}
.path{display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:14px 0; font-size:.92em}
.path .crumb{background:#fff; border:1px solid var(--line2); border-radius:8px; padding:6px 12px; font-weight:600; color:var(--muted)}
.path .arr{color:var(--faint); font-weight:700}
.mock{margin:20px 0 8px; border-radius:12px; overflow:hidden; box-shadow:0 14px 34px rgba(15,23,42,.16); border:1px solid var(--line)}
.mock .bar{background:#e9eef5; padding:9px 12px; display:flex; align-items:center; gap:7px; border-bottom:1px solid var(--line)}
.mock .dot{width:11px;height:11px;border-radius:50%}
.mock .dot.r{background:#f87171}
.mock .dot.y{background:#fbbf24}
.mock .dot.g{background:#34d399}
.mock .bar .ttl{margin-left:10px; font-size:.8em; color:var(--soft); font-weight:600}
.app{font-size:14px; color:var(--ink)}
.screen{background:#f4f6fb; padding:16px 18px}
.btn{border:1px solid transparent; border-radius:7px; padding:6px 13px; font-weight:600; font-size:.82em; display:inline-flex; align-items:center; gap:6px; cursor:default; white-space:nowrap}
.btn.ar{background:var(--ar); color:#fff}
.btn.pri{background:#3b82f6; color:#fff}
.btn.ghost{background:#fff; border:1px solid var(--line2); color:#334155}
.btn.dng{background:#ff4444; color:#fff}
.atoolbar{display:flex; align-items:flex-start; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:14px}
.eyebrow{font-size:.72em; text-transform:uppercase; letter-spacing:.07em; color:var(--ar-dark); font-weight:700; margin:0}
.atoolbar h2{margin:2px 0 0; font-size:1.2em}
.aacts{display:flex; gap:8px; flex-wrap:wrap; align-items:center}
.acard{border:1px solid var(--line); border-radius:12px; background:#fff; margin-bottom:12px; overflow:hidden}
.acard .ah{display:flex; align-items:center; gap:10px; padding:11px 14px; background:#fefce8; border-bottom:1px solid var(--line)}
.acard .ah .nm{font-weight:700}
.acard .ah .lab{font-size:.76em; color:var(--soft)}
.acard .ah .sa{margin-left:auto; font-size:.74em; color:var(--soft)}
.cbx{width:15px;height:15px;border:1.5px solid var(--line2); border-radius:4px; display:inline-block; flex:0 0 auto}
.cbx.on{background:var(--ar); border-color:var(--ar); position:relative}
.cbx.on::after{content:"✓"; color:#fff; font-size:11px; position:absolute; left:2px; top:-2px}
.arow{display:flex; align-items:center; gap:11px; padding:10px 14px; border-bottom:1px solid #f1f5f9}
.arow:last-child{border-bottom:none}
.arow .si{flex:1; min-width:0}
.arow .st{font-weight:600; font-size:.9em}
.arow .gr{font-size:.8em; color:var(--soft)}
.arow .meta{display:flex; gap:12px; align-items:center; font-size:.78em; color:var(--soft); flex-wrap:wrap}
.adet{background:#f8fafc; border:1px solid var(--line); border-radius:10px; padding:12px 14px; margin:8px 14px 12px}
.tcard{border:1px solid var(--line); border-radius:9px; background:#fff; padding:11px 13px; margin-bottom:9px}
.tcard .th{display:flex; align-items:flex-start; gap:10px}
.tcard .th .q{flex:1; font-weight:700; font-size:.9em}
.tcard .pts{font-size:.78em; color:var(--ar-dark); font-weight:700; white-space:nowrap; background:#fefce8; border:1px solid var(--ar-soft); border-radius:7px; padding:2px 8px}
.tlbl{font-size:.72em; text-transform:uppercase; letter-spacing:.04em; color:var(--faint); font-weight:700; margin:9px 0 3px}
.ans{font-size:.85em; padding:7px 10px; border-radius:7px; background:#fff; border:1px solid var(--line)}
.ans.stud{background:#fffbeb; border-color:#fde68a}
.ans.correct{background:#f0fdf4; border-color:#bbf7d0}
.ans.ai{background:#eff6ff; border-color:#bfdbfe}
.dlg{background:#fff; border-radius:14px; box-shadow:0 20px 50px rgba(15,23,42,.22); width:100%; max-width:440px; overflow:hidden; margin:0 auto}
.dlg .dh{padding:16px 20px 4px; font-size:1.15em; font-weight:800}
.dlg .db{padding:8px 20px 6px}
.dlg .dl{font-size:.85em; color:var(--muted); margin-bottom:8px}
.dlg .rowin{display:flex; gap:8px}
.dlg .num{width:90px; border:1px solid var(--line2); border-radius:7px; padding:7px 10px; font-size:.88em}
.dlg .sel{flex:1; border:1px solid var(--line2); border-radius:7px; padding:7px 10px; font-size:.88em; color:var(--ink); display:flex; justify-content:space-between; align-items:center}
.dlg .df{display:flex; gap:8px; justify-content:flex-end; padding:14px 20px 18px}
.kbd{font-family:ui-monospace,Menlo,Consolas,monospace; background:#eef2f7; border:1px solid var(--line2); border-radius:5px; padding:1px 7px; font-size:.86em}
