:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:#f4f3ee;--card:#fff;--border:#e3e1d8;--text:#1c1c1a;--text-2:#6b6a63;--text-3:#9d9c93;--accent:#185fa5;--accent-bg:#e6f1fb;--accent-text:#0c447c;--danger:#993c1d;--danger-bg:#faece7;--cat-trabajo:#378add;--cat-coding:#1d9e75;--cat-otros:#b4b2a9;--cat-interrupcion:#d85a30;--cat-hueco:#e7e5dc;--brass:#e9b44c}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-theme=light]){--bg:#17171a;--card:#202024;--border:#33333a;--text:#ececea;--text-2:#a5a49c;--text-3:#7a7972;--accent:#85b7eb;--accent-bg:#12273f;--accent-text:#b5d4f4;--danger:#f0997b;--danger-bg:#35180c;--cat-hueco:#2b2b31;--brass:#eabf5f}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#17171a;--card:#202024;--border:#33333a;--text:#ececea;--text-2:#a5a49c;--text-3:#7a7972;--accent:#85b7eb;--accent-bg:#12273f;--accent-text:#b5d4f4;--danger:#f0997b;--danger-bg:#35180c;--cat-hueco:#2b2b31;--brass:#eabf5f}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}button,input,textarea{-webkit-tap-highlight-color:transparent}button{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.5 system-ui,Segoe UI,Roboto,sans-serif}main{max-width:460px;padding:16px 16px calc(84px + env(safe-area-inset-bottom));flex-direction:column;gap:22px;margin:0 auto;display:flex}h2{letter-spacing:.02em;color:var(--text-2);margin:0 0 8px;font-size:13px;font-weight:600}.app-header{justify-content:space-between;align-items:center;display:flex}.app-header-right{align-items:center;gap:10px;display:flex}.btn-theme{color:var(--text-2);cursor:pointer;background:0 0;border:0;align-items:center;padding:2px;display:flex}.btn-theme:active{transform:scale(.92)}.app-date{text-transform:capitalize;font-weight:600}.app-total{color:var(--text-3);font-size:13px}.now-note{color:var(--text-2);margin:2px 0 0;font-size:13px}.card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:16px}.now-empty{color:var(--text-3);text-align:center;border-style:dashed;padding:22px 16px;font-size:14px}.plan-card{background:var(--accent-bg);border-color:#0000}.plan-phrase{color:var(--accent-text);margin:0;font-size:18px;font-weight:600;line-height:1.35}.plan-row{align-items:center;gap:8px;margin:8px 0 0;display:flex}.plan-label{color:var(--accent-text);opacity:.75;font-size:13px}.rumbo{width:174px;height:60px;display:block;overflow:visible}.rumbo-guide{fill:none;stroke:var(--accent);stroke-width:1.4px;opacity:.2}.rumbo-march{fill:none;stroke:var(--accent);stroke-width:2px;stroke-linecap:round;stroke-dasharray:3 7;animation:1.15s linear infinite rumbo-march}.rumbo-origin{fill:var(--brass)}.rumbo-pulse{fill:none;stroke:var(--brass);stroke-width:1.6px;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite rumbo-pulse}.rumbo-x{stroke:var(--brass);stroke-width:2.2px;stroke-linecap:round}@keyframes rumbo-march{to{stroke-dashoffset:-10px}}@keyframes rumbo-pulse{0%{opacity:.9;transform:scale(.5)}70%{opacity:0;transform:scale(2.4)}to{opacity:0;transform:scale(2.4)}}@media (prefers-reduced-motion:reduce){.rumbo-march{animation:none}.rumbo-pulse{opacity:0;animation:none}}.plan-card .hint{color:var(--accent-text);opacity:.6}.now-card.working{background:var(--accent-bg);border-color:#0000}.now-card.interruption{background:var(--danger-bg);border-color:#0000}.now-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.now-label{color:var(--accent-text);opacity:.75;margin:0;font-size:12px}.now-title{color:var(--accent-text);margin:2px 0 0;font-weight:600}.now-clock{font-variant-numeric:tabular-nums;color:var(--accent-text);white-space:nowrap;font-size:26px;font-weight:600}.interruption .now-label,.interruption .now-title,.interruption .now-clock{color:var(--danger)}.hint{color:var(--text-3);margin:8px 0 0;font-size:12px}.btn{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text);cursor:pointer;border-radius:10px;padding:8px 14px;font-size:14px}.btn:active{opacity:.7}.btn-big{width:100%;margin-top:14px;padding:12px;font-weight:600;display:block}.btn-danger{color:var(--danger);border-color:var(--danger);background:0 0}.limit-prompt{border:1px solid var(--accent);background:var(--accent-bg);border-radius:10px;margin-top:14px;padding:10px 12px}.limit-prompt p{margin:0 0 8px;font-size:14px}.limit-actions{gap:8px;display:flex}.limit-actions .btn{flex:1;padding:8px}.interruption .limit-prompt{border-color:var(--danger);background:var(--danger-bg)}.chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.chip{font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:999px;align-items:center;gap:6px;padding:4px 12px;font-size:13px;display:inline-flex}.chip-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;display:inline-block}.chip-add{color:var(--text-3);padding:4px 10px;font-weight:600}.chip-add:active{opacity:.7}.chip-input{cursor:text;width:130px;color:var(--text);font-size:16px}.chip-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.chip-on{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-text)}.chips-sheet{margin-top:2px}.chips-suggest{margin:-4px 0 10px}.task-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.done-list{opacity:.75;margin-top:8px}.task-row{text-align:left;width:100%;font:inherit;background:var(--card);border:1px solid var(--border);cursor:pointer;color:var(--text);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:12px;align-items:center;gap:10px;padding:12px 14px;display:flex}.task-row.running{background:var(--accent-bg);border-color:var(--accent)}.task-row.done .task-title{color:var(--text-3);text-decoration:line-through}.dot{border-radius:50%;flex-shrink:0;width:9px;height:9px}.task-main{flex-direction:column;flex:1;min-width:0;display:flex}.task-title{font-size:15px}.task-meta{color:var(--text-3);font-size:12px}.notes-mark{color:var(--text-3);margin-left:6px;font-size:12px}.due{color:var(--text-3);white-space:nowrap}.due-today{color:var(--accent);font-weight:600}.due-over{color:var(--danger);font-weight:600}.task-check{border:1px solid var(--border);width:28px;height:28px;color:var(--text-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.task-check:hover{border-color:var(--cat-coding);color:var(--cat-coding)}.quick-add input{width:100%;font:inherit;border:1px solid var(--border);background:var(--card);color:var(--text);border-radius:12px;padding:10px 14px}.quick-add input:focus{outline:2px solid var(--accent);outline-offset:-1px}.carry-row{background:var(--card);border:1px solid var(--border);border-radius:12px;align-items:center;gap:10px;padding:10px 14px;display:flex}.timeline{border-radius:6px;gap:2px;height:12px;display:flex;overflow:hidden}.timeline span{min-width:2px;display:block}.legend{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.legend span{color:var(--text-3);align-items:center;gap:5px;font-size:12px;display:inline-flex}.legend i{border-radius:50%;width:8px;height:8px;display:inline-block}.stats{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.metric{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px}.metric-label{color:var(--text-3);margin:0;font-size:11.5px}.metric-value{margin:4px 0 0;font-size:22px;font-weight:600}.metric-sub{color:var(--text-3);font-size:12px;font-weight:400}@property --hold-sweep{syntax:"<angle>";inherits:false;initial-value:0deg}.holdable{--hold-trace:var(--accent);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;transition:transform .25s;position:relative}.holdable:active{transform:scale(.97)}.holdable.holding:after,.holdable.sparked:after{content:"";border-radius:inherit;background:conic-gradient(from 180deg, var(--hold-trace) 0deg, var(--hold-trace) var(--hold-sweep), transparent var(--hold-sweep), transparent calc(360deg - var(--hold-sweep)), var(--hold-trace) calc(360deg - var(--hold-sweep)));filter:drop-shadow(0 0 3px var(--hold-trace));pointer-events:none;animation:hold-trace var(--hold-ms,.5s) linear forwards;padding:2px;position:absolute;inset:-4px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes hold-trace{0%,12%{--hold-sweep:0deg;opacity:0}22%{opacity:1}to{--hold-sweep:180deg;opacity:1}}.holdable.sparked:after{--hold-sweep:180deg;animation:.4s ease-out forwards hold-ring-fade}@keyframes hold-ring-fade{to{opacity:0}}.holdable.sparked:before{content:"";background:conic-gradient(from -41deg at 50% 100%, var(--hold-trace) 0deg 6deg, transparent 6deg 38deg, var(--hold-trace) 38deg 44deg, transparent 44deg 76deg, var(--hold-trace) 76deg 82deg, transparent 82deg);transform-origin:50% 100%;opacity:0;pointer-events:none;z-index:1;width:26px;height:15px;animation:.35s ease-out forwards hold-burst;position:absolute;top:-19px;left:50%;-webkit-mask:radial-gradient(16px at 50% 100%,#0000 28%,#fff 45% 82%,#0000 100%);mask:radial-gradient(16px at 50% 100%,#0000 28%,#fff 45% 82%,#0000 100%)}@keyframes hold-burst{0%{opacity:0;transform:translate(-50%)translateY(6px)scale(.4)}25%{opacity:.8}to{opacity:0;transform:translate(-50%)translateY(-4px)scale(1.15)}}.now-top.holdable{cursor:pointer;border-radius:12px;margin:-8px;padding:8px}.interruption .holdable{--hold-trace:var(--danger)}.sheet-overlay{z-index:50;background:#0006;justify-content:center;align-items:flex-end;animation:.25s ease-out overlay-in;display:flex;position:fixed;inset:0}@keyframes overlay-in{0%{background:0 0}}.sheet-overlay.sheet-closing{animation:.22s forwards overlay-out}.sheet-closing .sheet{animation:.22s cubic-bezier(.3,0,.7,0) forwards sheet-down}@keyframes overlay-out{to{background:0 0}}@keyframes sheet-down{to{transform:translateY(100%)}}.sheet{background:var(--card);border:1px solid var(--border);width:100%;max-width:460px;padding:16px 16px calc(20px + env(safe-area-inset-bottom));overscroll-behavior:contain;touch-action:pan-y;border-bottom:none;border-radius:16px 16px 0 0;max-height:100%;animation:.32s cubic-bezier(.16,1,.3,1) sheet-up;overflow-y:auto}.sheet:before{content:"";background:var(--border);border-radius:2px;width:36px;height:4px;margin:-4px auto 12px;display:block}@keyframes sheet-up{0%{transform:translateY(100%)}}.sheet-title{align-items:center;gap:8px;margin:0 0 10px;font-weight:600;display:flex}.sheet-btn{width:100%;font:inherit;text-align:left;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;padding:12px 10px;font-size:15px;display:flex}.sheet-btn:active{background:var(--bg)}.sheet-btn.danger{color:var(--danger)}.sheet-btn.danger.confirm{background:var(--danger-bg);font-weight:600}.sheet-divider{background:var(--border);height:1px;margin:10px 0 6px}.field{flex-direction:column;flex:1;gap:4px;min-width:0;margin-bottom:10px;display:flex}.field label{color:var(--text-3);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.field-clear{font:inherit;color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:0;font-size:11px}.field input,.field textarea{font:inherit;border:1px solid var(--border);background:var(--bg);width:100%;min-width:0;color:var(--text);appearance:none;border-radius:10px;padding:8px 10px;font-size:16px}.field textarea{resize:none;min-height:3.4em;max-height:9.5em;line-height:1.45;overflow-y:auto}.field input[type=date]{text-align:left;min-height:42px}.field input[type=date]::-webkit-date-and-time-value{text-align:left}.field input:focus,.field textarea:focus{outline:2px solid var(--accent);outline-offset:-1px}.repeat-row{align-items:center;gap:10px;display:flex}.repeat-row .repeat-check{appearance:auto;width:22px;min-width:22px;height:22px;accent-color:var(--accent);cursor:pointer;border-radius:0;margin:0;padding:0}.repeat-row .repeat-days{margin-top:0}.chip-day{justify-content:center;min-width:34px}.field-row{gap:10px;display:flex}.field-row .field{flex:1 1 0;min-width:0}.list-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.btn-order{font:inherit;color:var(--text-2);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px}.reorder-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.reorder-sorts{margin:0}.reorder-row{touch-action:pan-y}.reorder-row.dragging{cursor:grabbing;z-index:10;background:var(--accent-bg);border-color:var(--accent);position:relative;box-shadow:0 6px 18px #0000002e}.drag-handle{color:var(--text-3);cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0;margin:-14px -6px -14px -14px;padding:14px 12px;font-size:15px}.reorder-row.dragging .drag-handle{cursor:grabbing}.app-footer{color:var(--text-3);text-align:center;flex-direction:column;align-items:center;gap:10px;font-size:12px;display:flex}.btn-export{color:var(--text-2);font-size:13px}.footer-actions{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.badge-pro{vertical-align:2px;letter-spacing:.06em;text-transform:uppercase;background:var(--accent-bg);color:var(--accent-text);border-radius:999px;margin-left:6px;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.hourmap-note{margin:0 0 10px}.hourmap{align-items:flex-end;gap:2px;display:flex}.hourcol{flex-direction:column;flex:1 1 0;gap:4px;min-width:0;display:flex}.hourcol-stack{flex-direction:column;justify-content:flex-end;height:90px;display:flex}.hourcol-stack i{display:block}.hourcol-rest{background:var(--border);border-radius:3px 3px 0 0}.hourcol-focus{background:var(--accent)}.hourcol-focus:last-child,.hourcol-rest:only-child{border-radius:3px 3px 0 0}.hourcol-best .hourcol-stack{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}.btn-support{color:var(--text-2);align-items:center;gap:6px;font-size:13px;text-decoration:none;display:inline-flex}.bottom-nav{z-index:40;border-top:1px solid var(--border);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);padding:6px 0 calc(6px + env(safe-area-inset-bottom));justify-content:center;transition:transform .22s,opacity .22s;display:flex;position:fixed;bottom:0;left:0;right:0}html.kb-open .bottom-nav{opacity:0;pointer-events:none;transform:translateY(100%)}.bottom-nav button{font:inherit;color:var(--text-3);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:0 130px;align-items:center;gap:3px;padding:4px 0;font-size:11px;display:flex}.bottom-nav .nav-on{color:var(--accent);font-weight:600}.seg{background:var(--card);border:1px solid var(--border);border-radius:12px;gap:3px;padding:3px;display:flex}.seg button{font:inherit;color:var(--text-2);cursor:pointer;background:0 0;border:0;border-radius:9px;flex:1;padding:6px 0;font-size:13px}.seg .seg-on{background:var(--accent-bg);color:var(--accent-text);font-weight:600}.period-nav{justify-content:space-between;align-items:center;gap:10px;margin-top:10px;display:flex}.period-btn{width:38px;padding:4px 0;font-size:17px;line-height:1.3}.period-btn:disabled{opacity:.35;cursor:default}.period-label{font-size:14px;font-weight:600}.cols{align-items:flex-end;gap:3px;padding-top:18px;display:flex}.col{cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1 1 0;gap:4px;min-width:0;max-width:34px;padding:0;display:flex;position:relative}.col-stack{flex-direction:column;justify-content:flex-end;gap:2px;height:110px;display:flex}.col-stack i{min-height:2px;display:block}.col-stack i:first-child{border-radius:4px 4px 0 0}.col-sel .col-stack{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}.col-val{color:var(--text-2);white-space:nowrap;font-size:10px;position:absolute;top:-16px;left:50%;transform:translate(-50%)}.col-tick{color:var(--text-3);text-align:center;height:14px;font-size:10px;overflow:hidden}.col-detail{color:var(--text-2);margin:10px 0 0;font-size:12.5px}.cat-row{margin-bottom:10px}.cat-head{justify-content:space-between;align-items:baseline;gap:10px;font-size:13.5px;display:flex}.cat-name{text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;display:inline-flex;overflow:hidden}.cat-val{color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;font-size:12.5px}.cat-track{background:var(--cat-hueco);border-radius:4px;height:8px;margin-top:4px;overflow:hidden}.cat-track i{border-radius:0 4px 4px 0;min-width:2px;height:100%;display:block}.data-tasks{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.data-task{width:100%;font:inherit;text-align:left;color:var(--text);cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:14px;display:flex}.data-task:disabled{cursor:default;color:var(--text)}.trim{margin:8px 0 4px}.trim-track{background:var(--cat-hueco);border-radius:8px;height:28px;position:relative}.trim-fill{border-radius:8px;position:absolute;inset:0 auto 0 0}.trim-grip{cursor:ew-resize;touch-action:none;justify-content:center;align-items:center;width:28px;display:flex;position:absolute;inset:0 0 0 auto}.trim-grip:before{content:"";background:#ffffffe6;border-radius:2px;width:4px;height:14px}.trim-hint{margin:6px 0 0}.trim-preview{color:var(--accent);font-weight:600}.hint-btn{font:inherit;color:var(--text-3);cursor:pointer;background:0 0;border:none;padding:6px 0;font-size:13px}.data-task-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.data-task-ms{color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;font-size:13px}.data-focus-note{margin:-2px 0 8px}.project-hint{margin-top:4px}.metric-reasons{color:var(--text-2);margin:6px 0 0;font-size:13px;line-height:1.5}.insights{color:var(--text-2);flex-direction:column;gap:6px;margin:12px 0 0;padding:0 0 0 18px;font-size:13px;display:flex}.dt-head{justify-content:space-between;align-items:baseline;display:flex}.dt-toggle{padding:0 0 6px}.timeline-tap{cursor:pointer}.seg-manual{background-image:repeating-linear-gradient(-45deg,#fff6 0 3px,#0000 3px 6px)}.dd-wrap{opacity:0;grid-template-rows:0fr;margin-top:0;transition:grid-template-rows .3s cubic-bezier(.16,1,.3,1),margin-top .3s cubic-bezier(.16,1,.3,1),opacity .25s,transform .3s cubic-bezier(.16,1,.3,1);display:grid;transform:translateY(6px)}.dd-wrap.shown{opacity:1;grid-template-rows:1fr;margin-top:12px;transform:translateY(0)}.dd-wrap>.day-detail{min-height:0;overflow:hidden}.day-detail{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.dd-row{background:var(--card);border:1px solid var(--border);border-radius:10px;align-items:center;gap:8px;padding:6px 10px;font-size:13.5px;display:flex}.dd-time{width:92px;color:var(--text-3);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:12.5px}.dd-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.dd-ms{color:var(--text-3);white-space:nowrap;font-variant-numeric:tabular-nums;margin-left:auto;font-size:12.5px}.dd-gap{width:100%;font:inherit;text-align:left;cursor:pointer;color:var(--text-3);background:0 0;border-style:dashed}.dd-gap .dd-title{font-style:italic}.dd-plus{color:var(--accent);font-style:normal;font-weight:600}.dd-edge .dd-time{width:auto}.dot-manual{background-image:repeating-linear-gradient(-45deg,#ffffff80 0 2px,#0000 2px 4px)}.dd-editor{background:var(--card);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.dd-editor .chips,.dd-editor .hint{margin-top:0}.dd-editor-title{color:var(--text-2);margin:0;font-size:13px;font-weight:600}.dd-select,.dd-input{width:100%;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);border-radius:10px;padding:9px 12px;font-size:16px}.dd-select:focus,.dd-input:focus{outline:2px solid var(--accent);outline-offset:-1px}.dd-range{background:var(--cat-hueco);border-radius:8px;height:28px;position:relative}.dd-range-fill{border-radius:8px;position:absolute;top:0;bottom:0}.dd-grip{cursor:ew-resize;touch-action:none;justify-content:center;align-items:center;width:28px;display:flex;position:absolute;top:0;bottom:0}.dd-grip:before{content:"";background:#ffffffe6;border-radius:2px;width:4px;height:14px}.dd-grip-l{left:-6px}.dd-grip-r{right:-6px}.dd-times{align-items:center;gap:8px;display:flex}.dd-times input{font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);font-variant-numeric:tabular-nums;border-radius:8px;padding:6px 8px;font-size:16px}.dd-times-sep{color:var(--text-3)}.dd-times-total{color:var(--accent);font-variant-numeric:tabular-nums;margin-left:auto;font-size:14px;font-weight:600}.dd-actions{justify-content:flex-end;gap:8px;display:flex}.dd-save{background:var(--accent-bg);border-color:var(--accent);color:var(--accent-text);font-weight:600}.dd-save:disabled{opacity:.5;cursor:default}.catmenu-head{align-items:center;gap:10px;min-height:46px;margin:2px 0 16px;display:flex}.catmenu-swatch{cursor:pointer;border:none;border-radius:50%;flex-shrink:0;width:46px;height:46px;padding:0;transition:transform .12s;position:relative;box-shadow:inset 0 2px 6px #ffffff59,inset 0 0 0 1px #0000001f,0 2px 6px -2px #0006}.catmenu-swatch:after{content:"✎";background:var(--card);border:1px solid var(--border);width:20px;height:20px;color:var(--text-2);text-align:center;border-radius:50%;font-size:11px;line-height:18px;position:absolute;bottom:-3px;right:-3px}.catmenu-swatch:active{transform:scale(.94)}.catmenu-main{flex-direction:column;min-width:0;display:flex}.catmenu-name{text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:600;overflow:hidden}.catmenu-sub{color:var(--text-3);font-size:12px}.catmenu-edit{flex:1;align-items:center;gap:8px;min-width:0;display:flex}input.catmenu-input{min-width:0;font:inherit;border:1px solid var(--border);background:var(--bg);color:var(--text);appearance:none;border-radius:10px;flex:1;padding:9px 12px;font-size:16px;font-weight:600}input.catmenu-input:focus{outline:2px solid var(--accent);outline-offset:-1px}input.catmenu-input.catmenu-clash,input.catmenu-input.catmenu-clash:focus{outline-color:var(--danger);border-color:var(--danger)}.catmenu-ok{width:42px;height:42px;font:inherit;border:1px solid var(--accent);background:var(--accent-bg);color:var(--accent-text);cursor:pointer;border-radius:10px;flex-shrink:0;font-size:17px}.catmenu-ok:active{opacity:.7}.catmenu-hint{margin:0 0 2px 58px}.catmenu-hint-clash{color:var(--danger)}.sheet-btn-rich{gap:12px;padding:10px}.sheet-ico{background:var(--bg);width:30px;height:30px;color:var(--text-2);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;display:flex}.sheet-ico-color{border-radius:50%;box-shadow:inset 0 0 0 1px #0000001f}.sheet-btn-main{flex-direction:column;flex:1;min-width:0;line-height:1.3;display:flex}.sheet-btn-sub{color:var(--text-3);font-size:12px;font-weight:400}.sheet-chevron{color:var(--text-3);font-size:18px;line-height:1}.sheet-btn.danger .sheet-ico{background:var(--danger-bg)}.sheet-btn.danger.confirm .sheet-btn-sub{color:var(--danger)}.cp{--cp-size:min(72vw, 260px, 40vh);flex-direction:column;align-items:center;gap:14px;display:flex}.cp-head{align-self:stretch;align-items:center;gap:4px;margin-bottom:-4px;display:flex}.cp-back{font:inherit;width:34px;height:34px;color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:50%;padding:0 0 3px;font-size:24px;line-height:1}.cp-back:active{background:var(--bg)}.cp-title{margin:0;font-weight:600}.cp-preview{flex-direction:column;align-items:center;gap:6px;display:flex}.cp-bubble{border-radius:50%;width:84px;height:84px;transition:transform .18s cubic-bezier(.16,1,.3,1);display:block;box-shadow:inset 0 3px 10px #ffffff4d,inset 0 0 0 1px #0000001f,0 8px 20px -8px #0000008c}.cp-preview.cp-live .cp-bubble{transform:scale(1.09)}input.cp-hex{width:118px;font:inherit;letter-spacing:.08em;text-align:center;text-transform:uppercase;border:1px solid var(--border);background:var(--bg);color:var(--text-2);font-variant-numeric:tabular-nums;appearance:none;border-radius:9px;padding:5px 8px;font-size:16px}input.cp-hex:focus{outline:2px solid var(--accent);outline-offset:-1px;color:var(--text)}.cp-wheel{width:var(--cp-size);aspect-ratio:1;touch-action:none;cursor:crosshair;border-radius:50%;position:relative;box-shadow:0 0 0 1px #0000001a,0 10px 26px -14px #0009}.cp-wheel:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.cp-thumb{pointer-events:none;border:3px solid #fff;border-radius:50%;width:26px;height:26px;transition:transform .12s;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #0000004d,0 2px 6px #00000059}.cp-wheel.cp-live .cp-thumb{transform:translate(-50%,-50%)scale(1.18)}.cp-light{appearance:none;width:var(--cp-size);touch-action:none;cursor:pointer;border-radius:999px;outline:none;height:16px;margin:0;box-shadow:inset 0 0 0 1px #0000001f}.cp-light:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.cp-light::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#fff;border:2px solid #00000040;border-radius:50%;width:26px;height:26px;box-shadow:0 1px 5px #00000059}.cp-light::-moz-range-thumb{cursor:pointer;background:#fff;border:2px solid #00000040;border-radius:50%;width:22px;height:22px;box-shadow:0 1px 5px #00000059}.cp-presets{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.cp-preset{cursor:pointer;border:none;border-radius:50%;width:26px;height:26px;padding:0;box-shadow:inset 0 0 0 1px #00000026}.cp-preset:active{transform:scale(.9)}.cp-preset-on{box-shadow:inset 0 0 0 1px #00000026, 0 0 0 2px var(--card), 0 0 0 4px var(--accent)}.cp .btn-big{margin-top:0}@media (height<=640px){.cp{--cp-size:min(72vw, 34vh);gap:10px}.cp-bubble{width:64px;height:64px}}
