@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;500;600&family=Noto+Serif+TC:wght@400;500;600&display=swap');
:root{color-scheme:dark;font-family:'Noto Sans TC',sans-serif;color:#ece9e1;background:#111717;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh;overflow-x:hidden}.room{position:fixed;inset:0;background:url('./study.png') center/cover no-repeat;z-index:-2}.room:after{content:'';position:absolute;inset:0;background:linear-gradient(#080e10b3,transparent 25%,transparent 80%,#070c10b3)}button,input,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;border:0;background:none}button:disabled{opacity:.45;cursor:wait}button:focus-visible,a:focus-visible,input:focus-visible,#board:focus-visible{outline:2px solid #f8dca5;outline-offset:5px}button:hover{filter:brightness(1.15)}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 4.2vw}.brand{display:flex;gap:12px;align-items:center;color:#f5f1e6;text-decoration:none;font-size:17px;letter-spacing:.18em}.brand small{display:block;font-size:9px;letter-spacing:.23em;color:#b3b7b5;margin-top:5px}.brand-mark{font-family:Georgia,serif;font-size:32px;display:grid;place-items:center;border:1px solid #a4a49d;border-radius:50%;width:44px;height:44px;box-shadow:inset 0 0 10px #ffffff20}.header-right{display:flex;align-items:center;gap:22px;font-size:12px;color:#c6ccc9}.round{width:30px;height:30px;border:1px solid #ffffff40;border-radius:50%}.quiet{font-size:12px}.board-heading{display:flex;align-items:center;justify-content:space-between;margin:10px auto 20px;width:76%;text-shadow:0 2px 10px #000}.eyebrow{font-size:10px;letter-spacing:.2em;color:#cdbb9c}h1{font-family:'Noto Serif TC',serif;font-size:27px;font-weight:500;margin:6px 0;letter-spacing:.1em}.heading-line{display:inline-block;width:30px;height:1px;background:#c8af84;vertical-align:middle;margin-left:20px}#count{font-size:12px;color:#d5c6af}#board{position:relative;width:76%;height:65vh;min-height:430px;margin:auto;border-radius:4px;isolation:isolate}.breath{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 48% 42%,#ffe0a310,transparent 70%);animation:breathe 10s ease-in-out infinite}#empty{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:min(460px,90%);text-align:center;color:#3b281d;text-shadow:0 1px 1px #ebba7440}#empty h2{font:500 clamp(24px,2.8vw,40px) 'Noto Serif TC',serif;letter-spacing:.12em;margin:18px 0}#empty p:not(.empty-overline){font-size:14px;line-height:2;color:#513c2c}.empty-overline{font-size:9px;letter-spacing:.26em;margin-top:28px}.empty-hint{display:block;font-size:11px;margin-top:16px;color:#553b29}.tiny-pin{display:inline-block;width:15px;height:15px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffc694,#8d4327 60%,#48271c);box-shadow:3px 7px 5px #38231880}.metal{position:relative;isolation:isolate;border-radius:13px;padding:12px 23px;color:#181d20;background:linear-gradient(115deg,#767d87,#edf1f5 25%,#939da9 48%,#e4e7ec 70%,#8c949e);border:1px solid #ffffff75;box-shadow:inset 0 1px 1px white,inset 0 -2px 4px #050a1740,0 4px 16px #0005;font-size:14px;font-weight:500;overflow:hidden}.metal canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none;opacity:.6}.dock{position:fixed;bottom:33px;left:50%;transform:translateX(-50%);z-index:20;display:flex;align-items:center;gap:7px;padding:8px;border-radius:20px;background:linear-gradient(135deg,#383d42ed,#161b20ed);border:1px solid #999eaa65;box-shadow:inset 0 1px 1px #fff4,0 12px 40px #0009;backdrop-filter:blur(20px);max-width:95vw}.dock>button:not(.metal){width:42px;height:42px;border-radius:10px;font-size:24px;color:#c9ced4}.dock>button:hover{background-color:#ffffff12}.dock i{width:1px;height:24px;background:#fff2;margin:0 5px}.search{display:flex;align-items:center;gap:10px;width:245px;padding:0 10px;color:#b7bbc1}.search>span{font-size:27px}.search input{min-width:0;width:100%;color:#eeeff3;background:none;border:0;font:inherit;font-size:13px;outline:none}.search kbd{font-size:9px;white-space:nowrap;padding:3px;border:1px solid #fff2;border-radius:4px}footer{position:fixed;bottom:20px;left:4.2vw;right:4.2vw;display:flex;justify-content:space-between;pointer-events:none;font-size:11px;color:#c2b49b}#dropOverlay{position:absolute;inset:0;z-index:15;border:2px dashed #e6d2a7;border-radius:8px;background:#21190dd9;backdrop-filter:blur(6px);color:#ffe9bc;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}#dropOverlay[hidden]{display:none}#dropOverlay>span{font-size:55px}#dropOverlay h2{font:500 32px 'Noto Serif TC',serif}#notes{position:absolute;inset:0;overflow:auto;padding:14px}.note{position:absolute;width:210px;padding:26px 13px 12px;background:#f2e3bd;color:#3f3527;box-shadow:3px 8px 15px #160b0870,inset 0 0 30px #936b1610;border-radius:1px;transform:rotate(var(--rotation,-2deg));animation:pin-in .4s ease-out}.note:nth-child(3n+2){background:#dae2d7}.note:nth-child(3n){background:#edcfbf}.note .pin{position:absolute;left:50%;top:6px;width:13px;height:13px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffd2a5,#a44c33 55%,#562d25);box-shadow:2px 3px 3px #34261c80;pointer-events:none}.note .handle{position:absolute;left:0;right:0;top:0;height:25px;cursor:grab;touch-action:none}.note.dragging{z-index:10;box-shadow:8px 15px 25px #0006;animation:none}.note h3{font-size:13px;font-weight:500;margin:10px 0 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note .meta,.note .path{font-size:10px;color:#665b4b;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin:4px 0}.note .media{height:120px;width:100%;object-fit:cover;background:#e0d3af;display:block;border:4px solid #fff8}.note audio{width:100%;height:36px;margin-top:38px;margin-bottom:46px}.file-icon{height:120px;display:grid;place-content:center;background:#fff4;font-family:Georgia,serif;font-size:26px;letter-spacing:.08em;border:1px solid #67512a20}.note-actions{display:flex;align-items:center;justify-content:space-between;margin-top:10px;border-top:1px solid #67512a26;padding-top:6px}.note-actions button{font-size:11px;padding:5px 6px;color:#51402e}.note-actions button:hover{background:#0001}.note .session{font-size:10px;color:#784222}#toast{position:fixed;bottom:111px;left:50%;transform:translateX(-50%);z-index:40;background:#20272af2;color:#eee7d9;max-width:92vw;padding:14px 20px;border:1px solid #b6b8c24a;border-radius:12px;box-shadow:0 5px 25px #0006;font-size:13px}#toast button{color:#f5d29c;margin-left:15px;text-decoration:underline}dialog{color:#ece9e1;background:linear-gradient(135deg,#343a3e,#191f22);border:1px solid #a1a6af70;border-radius:20px;padding:38px;max-width:min(850px,92vw);max-height:85vh;box-shadow:0 20px 80px #0009}dialog::backdrop{background:#080d10bb;backdrop-filter:blur(8px)}dialog .close{position:absolute;right:12px;top:8px;font-size:26px}dialog p{line-height:1.9;font-size:14px;color:#c9c7bd}dialog h2{font:500 25px 'Noto Serif TC',serif}#helpDialog{max-width:510px}#previewContent img,#previewContent video{max-width:100%;max-height:58vh}#previewContent iframe{width:70vw;height:60vh;border:0;background:white}#previewContent pre{white-space:pre-wrap;word-break:break-word;max-height:50vh;overflow:auto}#previewContent a{color:#ebd2ac}#previewContent h2{overflow-wrap:anywhere}.no-results{padding-top:100px;text-align:center;color:#362719}body.paused .breath{animation:none}@keyframes breathe{0%,100%{opacity:.25;transform:scale(.995)}50%{opacity:1;transform:scale(1.005)}}@keyframes pin-in{from{opacity:0;translate:0 -12px;scale:.95}to{opacity:1;translate:0 0;scale:1}}@media(min-aspect-ratio:17/9){#board{height:61vh;min-height:300px}.board-heading{margin-top:0}header{height:80px}}@media(max-width:700px){.room{background-size:auto 100%;background-position:center}.room:after{background:#0d17162b}header{height:82px;padding:0 20px}.brand{font-size:14px}.brand small{font-size:8px}.local-label{display:none}.header-right{gap:10px}.board-heading{width:88%;margin-top:25px}h1{font-size:24px}#board{width:92%;height:64vh;min-height:400px;background:#b58049bb;border:8px solid #65422b;box-shadow:inset 0 0 35px #40251180}#empty h2{font-size:27px}.dock{bottom:28px;gap:2px;padding:6px}.dock .metal{padding:12px}.dock .metal span{display:none}.search{width:140px;padding:0 2px}.search kbd{display:none}.dock>button:not(.metal){width:34px}.dock i{margin:0 2px}footer{bottom:8px;font-size:9px}.note{width:180px}dialog{padding:32px 20px}#toast{bottom:100px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* v1.1 P0: stable scene, bounded scrollable working surface and readable controls. */
[hidden] { display: none !important; }
body { min-height: 100dvh; height: 100dvh; overflow: hidden; }
header { height: 84px; }
.board-heading { margin: 4px auto 10px; width: 76%; }
#board { position: fixed; margin: 0; min-height: 0; border-radius: 8px; overflow: hidden; }
#notes { padding: 0; overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; scrollbar-color: #684b30 #d6b17960; }
.extent { width: 1px; pointer-events: none; }
.note { animation: none; }
.note h3, .note-actions button { font-size: 14px; }
.note .meta, .note .path, .note .session { font-size: 12px; }
.note .session { height: 18px; color: #6e321f; }
.note .handle { outline-offset: -2px; }
.note:focus-within { z-index: 3; }
.note.dragging { z-index: 10; }
#empty { top: 50%; color: #2c2018; width: min(470px,94%); padding: 22px 14px; border-radius: 12px; background: radial-gradient(ellipse, #f4d69bbb, #f4d69b70 65%, transparent); text-shadow: none; }
#empty p:not(.empty-overline) { font-size: 16px; color: #372719; }
.empty-overline { font-size: 11px; letter-spacing: .14em; margin-top: 15px; }
.empty-hint { font-size: 13px; color: #39271b; }
#empty h2 { font-size: clamp(24px,2.6vw,36px); }
.metal { color: #131b21; background: linear-gradient(115deg,#aab3bc,#d5dce1 25%,#b4bec8 48%,#dee3e7 70%,#aeb9c2); font-weight: 600; text-shadow: 0 1px #ffffff70; }
.metal canvas { opacity: .18; }
.metal:hover canvas, .metal:focus-visible canvas { opacity: .26; }
.metal:hover { filter: none; }
body.paused .metal canvas { opacity: .12; }
.dock { bottom: 38px; }
.tool { position: relative; display: inline-flex; }
.tool > button { width: 42px; height: 42px; color: #d5dbe1; border-radius: 10px; font-size: 24px; }
.tool > button:hover, .tool > button:focus-visible { background: #ffffff19; }
button:active { background-color: #ffffff20; }
button[aria-pressed="true"] { box-shadow: inset 0 -2px #dfc493; }
.tooltip { position: absolute; bottom: calc(100% + 16px); left: 50%; transform: translateX(-50%); pointer-events: none; opacity: 0; border: 1px solid #b7b4aa70; background: #20262b; color: #fff0d5; padding: 8px 12px; border-radius: 7px; font-size: 13px; white-space: nowrap; }
.tool:hover .tooltip, .tool:focus-within .tooltip { opacity: 1; }
.search input { font-size: 14px; }
.search:focus-within { outline: 2px solid #f8dca5; outline-offset: 3px; border-radius: 6px; }
.quiet { font-size: 13px; padding: 7px 4px; }
#count, .header-right { font-size: 13px; }
body.has-notes .board-heading .eyebrow, body.focus-mode .board-heading .eyebrow, body.focus-mode .brand small { display: none; }
body.focus-mode header { height: 56px; }
body.focus-mode .board-heading { margin: 0 auto; }
body.focus-mode h1 { font-size: 21px; }
footer { bottom: 10px; gap: 15px; align-items: end; font-size: 12px; }
#storage { text-align: right; padding: 3px 7px; background: #111b1bdc; border-radius: 4px; color: #e1d7c4; }
#storage[data-state="error"] { color: #ffbfa4; }
#storageAlert { position: fixed; z-index: 45; top: 85px; left: 50%; transform: translateX(-50%); width: min(640px,94vw); padding: 14px 18px; background: #422b25fa; border: 1px solid #d39f83; border-radius: 10px; color: #ffead8; font-size: 14px; }
#storageAlert button { text-decoration: underline; margin-left: 10px; padding: 6px; }
#importProgress { position: fixed; z-index: 30; right: 24px; bottom: 116px; width: min(410px,calc(100vw - 32px)); max-height: min(440px,60dvh); overflow: auto; background: #20272af5; border: 1px solid #9eabb570; border-radius: 14px; box-shadow: 0 10px 40px #0008; padding: 18px; color: #e8e2d6; }
.progress-heading { display: flex; align-items: center; gap: 10px; justify-content: space-between; font-size: 15px; }
.progress-heading button { border: 1px solid #c4b595; padding: 6px 10px; border-radius: 7px; font-size: 13px; }
#importProgress p, #importProgress li, #importProgress summary { font-size: 13px; line-height: 1.7; }
#jobProgress { width: 100%; height: 6px; accent-color: #d5b88c; }
#jobNotice { color: #d5c7ae; }
#issueList { padding-left: 20px; overflow-wrap: anywhere; max-height: 180px; overflow: auto; }
#importProgress summary { cursor: pointer; }
#toast { bottom: 114px; max-width: min(570px,94vw); }
#previewContent img, #previewContent video { display: block; margin: 16px 0; }
.no-results { padding: 35px 18px; margin: 30px; background: #f2dbb5e8; border-radius: 8px; }
@media(max-width:700px) {
  header { height: 92px; padding: 12px 16px; align-items: start; }
  .brand { font-size: 13px; gap: 8px; }
  .brand-mark { width: 35px; height: 35px; font-size: 25px; }
  .header-right { justify-content: flex-end; gap: 5px; flex-wrap: wrap; max-width: 195px; }
  .quiet { font-size: 12px; }
  .board-heading { width: calc(100% - 40px); margin: 0 auto 6px; }
  #board { border: 4px solid #68472d; background: #bd884fbe; }
  #empty { padding: 16px 8px; }
  #empty h2 { font-size: 25px; margin: 12px 0; }
  #empty p:not(.empty-overline) { font-size: 14px; line-height: 1.7; }
  .empty-overline { font-size: 9px; margin-top: 8px; }
  .empty-hint { font-size: 12px; }
  .dock { bottom: 48px; max-width: calc(100vw - 20px); gap: 2px; }
  .dock .metal { padding: 12px 10px; min-width: 36px; }
  .tool > button { width: 34px; height: 40px; }
  .search { width: clamp(64px,22vw,140px); gap: 4px; }
  .search > span { display: none; }
  .dock i { margin: 0 1px; }
  footer > span:first-child { display: none; }
  footer { justify-content: center; }
  #storage { font-size: 11px; text-align: center; }
  #importProgress { right: 16px; bottom: 124px; }
  #toast { bottom: 125px; font-size: 13px; }
  body.focus-mode header { height: 70px; }
}
@media(max-height:650px) {
  header { height: 55px; padding-top: 8px; }
  .brand small, .board-heading .eyebrow { display: none; }
  .board-heading { margin: 0 auto; }
  h1 { font-size: 21px; margin: 4px 0; }
  #empty { padding: 8px; }
  #empty .tiny-pin, .empty-overline, .empty-hint { display: none; }
  #empty h2 { font-size: 23px; margin: 8px; }
  #empty p:not(.empty-overline) { line-height: 1.5; margin: 8px; font-size: 14px; }
  .dock { bottom: 29px; }
}

@media(max-width:700px){.note .handle{cursor:default;touch-action:pan-y}}

/* v1.2 workspace navigation: quiet graphite shell, original room and shader intact. */
:root { --sidebar-width: 256px; }
body.sidebar-collapsed { --sidebar-width: 68px; }
header { gap: 16px; }
#sidebarToggle { flex-shrink: 0; z-index: 62; }
.header-right { margin-left: auto; }
#sidebar { position: fixed; left: 16px; top: 94px; bottom: 104px; width: var(--sidebar-width); z-index: 35; display: flex; flex-direction: column; background: linear-gradient(155deg,#252b2df5,#151b1ef5); border: 1px solid #86949b40; border-radius: 15px; box-shadow: 0 18px 48px #0007; color: #e1e5e5; }
.sidebar-brand { display:flex; padding: 20px 20px 15px; font-size: 23px; letter-spacing: .07em; color: #d8c29e; }
.sidebar-brand > span { font-size: 13px; padding-top: 5px; }
.sidebar-brand small { display: block; color: #98a6aa; font-size: 10px; letter-spacing: .1em; margin-top: 6px; }
#sideContent { overflow-y: auto; overflow-x: hidden; flex: 1; padding: 0 10px 12px; scrollbar-width: thin; scrollbar-color: #627078 transparent; }
.side-group { margin-bottom: 14px; }
.side-caption { font-size: 11px; color: #a4adb0; letter-spacing: .13em; margin: 12px 10px 8px; white-space: nowrap; }
.side-group-heading { display: flex; align-items: center; justify-content: space-between; }
.side-add { font-size: 22px; padding: 0 10px; }
.side-nav { position:relative; display: flex; align-items: center; gap: 10px; min-height: 39px; width: 100%; border-radius: 8px; padding: 8px 10px; text-align: left; font-size: 13px; color: #ccd3d6; }
.side-nav:hover,.side-nav:focus-visible { background:#a6b8c319; }
.side-nav[aria-current="page"],.side-nav[aria-pressed="true"] { background: linear-gradient(110deg,#879ca333,#d9c39a15); color: #ffe7be; box-shadow: inset 2px 0 #d0bb96; }
.nav-icon { width: 19px; flex-shrink: 0; text-align: center; font-size: 18px; }
.nav-label { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; flex:1; }
.nav-count { font-size: 11px; color: #adbac0; padding: 2px 5px; border-radius: 5px; background: #080f123b; }
.board-row { display:flex; align-items:center; }
.board-row .side-nav { min-width:0; flex:1; }
.board-menu { width:26px; flex-shrink:0; height:36px; font-size:20px; border-radius:6px; }
.board-menu:hover { background:#ffffff15; }
.settings-button { padding: 10px; font-size: 13px; text-align:left; width:100%; margin-top:12px; }
.sidebar-foot { font-size:9px; color:#87989e; letter-spacing:.15em; padding: 0 20px 12px; white-space:nowrap; }
.side-tip { display:none; }
.sidebar-collapsed .nav-label,.sidebar-collapsed .nav-count,.sidebar-collapsed .side-caption,.sidebar-collapsed .sidebar-brand>span,.sidebar-collapsed .sidebar-foot,.sidebar-collapsed .board-menu { display:none; }
.sidebar-collapsed .sidebar-brand { padding:16px 20px; }
.sidebar-collapsed #sideContent { padding:0 7px; }
.sidebar-collapsed .side-nav { justify-content:center; padding:8px; }
.sidebar-collapsed .side-group-heading { justify-content:center; }
.sidebar-collapsed .settings-button { font-size:0; text-align:center; }
.sidebar-collapsed .settings-button::after { content:'⚙';font-size:18px; }
.sidebar-collapsed .side-nav:hover .side-tip,.sidebar-collapsed .side-nav:focus-visible .side-tip { display:block; position:fixed; left:91px; padding:8px 12px; background:#20282d; border:1px solid #74848c; border-radius:6px; color:#ffebcb; white-space:nowrap; font-size:12px; z-index:80; }
.board-heading { margin-left: max(calc(var(--sidebar-width) + 54px),19vw); width:auto; margin-right:12vw; min-height:70px; }
.board-heading > div { min-width:0; }
#boardTitle { white-space:nowrap; text-overflow:ellipsis; overflow:hidden; max-width:56vw; margin-bottom:8px; }
#count { white-space:nowrap; }
#scopeTools { display:flex; gap:10px; min-height:0; }
.scope-button { font-size:12px; color:#f8e5be; background:#192329d9; padding:5px 9px; border:1px solid #b4b6ab70; border-radius:5px; }
.dock { max-width:calc(100vw - 32px); gap:7px; }
#importTarget { max-width:150px; border:1px solid #8c989b60; border-radius:8px; background:#283237; color:#dce2e1; padding:9px 5px; font:inherit; font-size:12px; }
.workspace-actions { display:flex; gap:8px; flex-wrap:wrap; border-top:1px solid #604e3029; padding-top:8px; margin-top:6px; }
.workspace-actions button { font-size:12px; padding:4px 2px; color:#453423; }
.created-label { font-size:10px; color:#6d5b44; margin:5px 0 0; }
.note { min-height:322px; }
.note.located { outline:3px solid #ffe8a5; outline-offset:4px; }
.dock .metal { flex-shrink:0; white-space:nowrap; }
#notes > .no-results { position:absolute; top:20px; left:12px; right:12px; margin:0; padding:24px 12px; }
.no-results button { display:block; margin:12px auto 0; padding:8px 12px; border:1px solid #7a6448; border-radius:5px; }
body.focus-mode #sidebarToggle { visibility:hidden; }
.drop-target { outline:2px solid #ffe0a1; background:#b698615e!important; color:#fff4dd!important; }
#moveHint { position:fixed; z-index:75; top:76px; left:50%; transform:translateX(-50%); max-width:75vw; border:1px solid #c9b68f; background:#20292cf5; padding:10px 18px; border-radius:8px; color:#ffebc7; pointer-events:none; font-size:13px; }
#workspaceDialog { width:min(480px,92vw); }
#workspaceContent { display:flex; flex-direction:column; gap:12px; }
#workspaceContent p { font-size:14px; }
#workspaceContent button { padding:10px 14px; background:#d1bf9830; border:1px solid #bba78170; border-radius:7px; text-align:left; color:inherit; }
#workspaceContent .danger { background:#973e2829; border-color:#cf8565; }
.workspace-form { display:flex; flex-direction:column; gap:12px; }
#workspaceContent input,#workspaceContent select { padding:12px; width:100%; border:1px solid #8b795a; border-radius:6px; background:#f2e5cc; color:#292721; font:inherit; }
.form-error { color:#982e20; }
#trashBoards { position:relative; margin:0 12vw 8px max(calc(var(--sidebar-width) + 54px),19vw); max-height:86px; overflow:auto; z-index:12; }
.trashed-board { display:flex; align-items:center; gap:12px; color:#f1e5cd; background:#1e282de8; padding:8px 12px; border-radius:6px; font-size:12px; margin-bottom:4px; }
.trashed-board > span { flex:1; min-width:0; overflow:hidden; white-space:nowrap; text-overflow:ellipsis; }
.trashed-board button { padding:5px; text-decoration:underline; }
#drawerBackdrop { display:none; }
.focus-mode #sidebar { display:none; }
.focus-mode .board-heading { margin-left:19vw; margin-right:12vw; }
.focus-mode #trashBoards { margin-left:19vw; }
@media(min-width:701px) and (max-width:1050px) {
  .board-heading { margin-right:3vw; }
  #boardTitle { max-width:42vw; }
  .dock { gap:2px; }
  .dock .search { width:130px; }
  .dock kbd { display:none; }
  #importTarget { max-width:116px; }
}
@media(max-width:700px) {
  header { gap:8px; padding-left:12px; }
  .brand-mark { display:none; }
  .brand small { display:none; }
  .header-right { gap:2px; }
  #sidebar { left:0; top:62px; bottom:0; width:256px; border-radius:0 14px 0 0; z-index:61; display:none; }
  .drawer-open #sidebar { display:flex; }
  .drawer-open #drawerBackdrop { display:block; position:fixed; inset:0; background:#060b10a6; z-index:60; }
  .sidebar-collapsed .nav-label,.sidebar-collapsed .nav-count,.sidebar-collapsed .side-caption,.sidebar-collapsed .sidebar-brand>span,.sidebar-collapsed .sidebar-foot,.sidebar-collapsed .board-menu { display:block; }
  .sidebar-collapsed .settings-button { font-size:13px; text-align:left; }
  .sidebar-collapsed .settings-button::after { display:none; }
  .sidebar-collapsed .side-nav { justify-content:start; }
  .sidebar-collapsed .side-nav .side-tip { display:none!important; }
  .board-heading,.focus-mode .board-heading { width:auto; margin:0 20px 6px; }
  #boardTitle { max-width:64vw; font-size:24px; }
  #trashBoards,.focus-mode #trashBoards { margin:0 20px; }
  .dock { flex-wrap:wrap; width:min(480px,calc(100vw - 20px)); justify-content:center; padding-top:9px; }
  #importTarget { order:-1; flex:0 0 100%; max-width:100%; height:32px; }
  .dock .search { flex:1; min-width:65px; max-width:140px; }
  .dock i { display:none; }
  #importProgress,#toast { bottom:168px; }
  #moveHint { top:92px; }
  .sidebar-collapsed .side-group-heading { justify-content:space-between; }
}
/* v1.3: subdued organization controls keep the original paper and warm room. */
.organizer-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0}.organizer-row>span{flex:1}.tag-section{display:flex;flex-direction:column;gap:6px}.tag-filter{text-align:left;border-left:3px solid var(--tag-color,#a6b6a0)!important}.tag-filter[aria-pressed=true]{outline:1px solid #ddc398;background:#554731}.tag-chips{display:flex;gap:4px;flex-wrap:wrap;margin:6px 0}.tag-chip{color:#263024;background:var(--tag-color,#a6b6a0);border-radius:9px;font-size:11px;padding:2px 7px;overflow-wrap:anywhere}.select-note{margin-top:6px}.note.selected{outline:3px solid #d5b576;box-shadow:0 0 0 5px #231e18aa}.selection-bar{position:fixed;left:max(280px,25%);right:5%;z-index:35;display:flex;gap:12px;align-items:center;justify-content:center;flex-wrap:wrap;background:#222624f5;color:#f4e7cf;border:1px solid #8c785b;border-radius:12px;padding:10px;box-shadow:0 6px 25px #0008}.selection-bar[hidden]{display:none}.selection-bar button{padding:6px 12px}.marquee{position:absolute;background:#caa66033;border:1px solid #e2c48e;pointer-events:none;z-index:40}.folder-heading{display:block;width:100%;text-align:left;color:#dec7a2;margin:6px 0}.folder-boards{padding-left:9px;border-left:1px solid #77674e}.folder-boards[hidden]{display:none}.board-folder{margin:9px 0}.board-folder>button:nth-child(2){font-size:11px}.board-row>button:last-child{flex-shrink:0}.sidebar-collapsed .tag-section,.sidebar-collapsed .folder-heading,.sidebar-collapsed .board-folder>button{display:none}.sidebar-collapsed .folder-boards{display:block;padding:0;border:0}.palette-option{padding:10px;border-radius:6px;cursor:pointer;overflow-wrap:anywhere}.palette-option[aria-selected=true]{background:#69593f;color:#fff3d9;outline:1px solid #bfa575}#paletteResults{max-height:50vh;overflow:auto;margin-top:12px}#workspaceContent input:not([type=color]),#workspaceContent select{max-width:100%;padding:9px;margin:6px 0;background:#1c211f;color:#f3e4c7;border:1px solid #736853;border-radius:6px}#workspaceContent input[type=search]{width:100%}#workspaceContent button{margin:4px}#workspaceContent{overflow-wrap:anywhere}#workspaceContent [role=alert]{color:#f8baa8}.duplicate-group{border-top:1px solid #766448;padding:10px 0}.pdf-thumbnail{width:100%;height:140px;object-fit:contain;background:#efe9da}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #f3d48f;outline-offset:3px}
@media(max-width:700px){.selection-bar{left:12px;right:12px;padding:6px;gap:6px}.selection-count{font-size:12px}.sidebar-collapsed .tag-section{display:flex}.sidebar-collapsed .folder-heading,.sidebar-collapsed .board-folder>button{display:block}}
.tag-chips{max-height:48px;overflow:auto}.note>.select-note,.note>.tag-chips+button{font-size:12px;padding:3px 6px}.board-folder>button:nth-child(2){display:inline-block}.board-row{min-width:0}.board-row .side-nav{min-width:0}
