:root{--bg:#0d0d0d;--surface:#161616;--raised:#1e1e1e;--border:#2a2a2a;--accent:#ff6b00;--accent-dim:#7a3300;--text:#f5f5f5;--muted:#8a8a8a;--ok:#3dd68c;--danger:#ff5a4e;--sunday:#ff7b6b;--saturday:#6baeff;--calendar-muted:#444;--tap:48px;--r:12px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:-apple-system,Hiragino Sans,Yu Gothic UI,system-ui,sans-serif}*{box-sizing:border-box}html,body{color:var(--text);-webkit-font-smoothing:antialiased;background:#050505;margin:0;padding:0}button,input,textarea,select{color:inherit;font-family:inherit}#root{min-height:100dvh}.app-shell{background:var(--bg);flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex}.app-screen{min-height:0;padding-bottom:calc(76px + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;display:flex}.apphead{padding:calc(20px + env(safe-area-inset-top,0px)) 16px 12px;flex:none;justify-content:space-between;align-items:center;display:flex}.apphead h2{letter-spacing:.02em;margin:0;font-size:20px}.apphead .sub{color:var(--muted);margin-top:2px;font-size:12px}.ghost-btn{border:1px solid var(--border);color:var(--text);min-height:var(--tap);background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:8px 14px;font-size:13px;text-decoration:none;display:inline-flex}.ghost-btn.icon-back{justify-content:center;align-items:center;width:44px;min-height:44px;padding:0;font-size:26px;line-height:1;text-decoration:none}.scroll{flex:1;padding:0 16px 16px;overflow-y:auto}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);margin-bottom:12px;padding:12px}.card-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.ex-name{font-size:16px;font-weight:600}.ex-name .hand{color:var(--accent);margin-left:4px;font-size:12px;font-weight:500}.tag{color:var(--text);border:1px solid var(--border);white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:11px}.set-row{font-variant-numeric:tabular-nums;border-top:1px solid #202020;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:7px 0;display:grid}.set-row:first-of-type{border-top:none}.set-no{color:var(--muted);font-size:12px}.set-val{font-size:15px}.set-val b{font-size:17px}.set-val span{color:var(--muted);font-size:12px}.set-del{color:var(--muted);background:0 0;border:none;width:28px;height:28px;font-size:16px}.set-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.pr{background:var(--accent);color:#000;letter-spacing:.04em;white-space:nowrap;border-radius:4px;padding:2px 5px;font-size:10px;font-weight:700}.direct-row{align-items:center;gap:6px;margin-top:10px;display:flex}.direct-row input.num{min-width:0;height:var(--tap);border:1px solid var(--accent-dim);color:var(--accent);text-align:center;-moz-appearance:textfield;background:#000;border-radius:10px;flex:1 1 0;font-size:18px;font-weight:700}.direct-row input.num::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.direct-row input.num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.direct-row .unit{color:var(--muted);flex:none;font-size:12px}.direct-row .x{color:var(--muted);flex:none;font-size:14px}.direct-row .btn.add-set{white-space:nowrap;flex:none;padding:0 14px}.row-2{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.btn{height:var(--tap);background:var(--accent);color:#000;border:none;border-radius:10px;font-size:14px;font-weight:700}.btn.sec{background:var(--raised);color:var(--text);border:1px solid var(--border);font-weight:500}.btn:disabled{opacity:.5}.memo{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);margin-top:16px;margin-bottom:12px;padding:12px}.memo .lbl{color:var(--muted);margin-bottom:6px;font-size:11px}.memo textarea{resize:vertical;color:#cfcfcf;background:0 0;border:none;width:100%;min-height:64px;padding:0;font-size:16px;line-height:1.6}.memo textarea:focus{outline:none}.timerbar{background:var(--raised);border:1px solid var(--accent-dim);border-radius:var(--r);flex:none;justify-content:space-between;align-items:center;height:54px;margin:0 16px 8px;padding:0 14px;display:flex}.timerbar .lbl{color:var(--muted);font-size:11px}.timerbar .t{font-variant-numeric:tabular-nums;color:var(--accent);font-size:22px;font-weight:700}.timerbar-ctrls{align-items:center;gap:6px;display:flex}.timerbar-btn{background:var(--surface);border:1px solid var(--border);min-width:40px;min-height:40px;color:var(--text);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;padding:0 8px;font-size:12px;display:flex}.timerbar-toggle{width:40px;color:var(--accent);border-color:var(--accent-dim);padding:0}.timerbar-toggle svg{width:18px;height:18px}.note{color:var(--muted);border:1px solid #2b2213;border-left:2px solid var(--accent);background:#12100c;border-radius:6px;margin-top:7px;padding:9px 10px;font-size:11px;line-height:1.6}.tabs{gap:6px;margin-bottom:14px;display:flex}.tabs button{text-align:center;background:var(--surface);color:var(--muted);border:1px solid var(--border);border-radius:9px;flex:1;padding:10px 0;font-size:12px}.tabs button.on{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.seg{gap:6px;margin-bottom:12px;display:flex;overflow-x:auto}.seg button{white-space:nowrap;background:var(--surface);border:1px solid var(--border);color:var(--muted);border-radius:999px;padding:7px 11px;font-size:11px}.seg button.on{background:var(--accent);color:#000;border-color:var(--accent);font-weight:700}.bottom-nav{z-index:100;border-top:1px solid var(--border);background:var(--surface);max-width:480px;height:68px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));grid-template-columns:repeat(5,1fr);margin:0 auto;display:grid;position:fixed;bottom:0;left:0;right:0}.bottom-nav a{color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:10px;text-decoration:none;display:flex}.bottom-nav a.on{color:var(--accent)}.bottom-nav .ic{font-size:18px;line-height:1;display:flex}.bottom-nav .ic svg{width:22px;height:22px}.timer-flash-overlay{pointer-events:none;z-index:9999;background:var(--accent);animation:.3s ease-in-out 3 timer-flash-overlay;position:fixed;inset:0}@keyframes timer-flash-overlay{0%,to{opacity:0}50%{opacity:.85}}.timer-mini-pill-wrap{left:0;right:0;bottom:calc(76px + env(safe-area-inset-bottom,0px));pointer-events:none;z-index:90;justify-content:center;max-width:480px;margin:0 auto;display:flex;position:fixed}.timer-mini-pill{pointer-events:auto;background:var(--raised);border:1px solid var(--accent-dim);color:var(--accent);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:6px;padding:6px 16px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 2px 10px #0006}.timer-mini-pill svg{width:14px;height:14px}.mfield{border-bottom:1px solid #202020;grid-template-columns:1fr auto;align-items:center;gap:10px;padding:12px 0;display:grid}.mfield .k{font-size:14px}.mfield .k span{color:var(--muted);margin-top:2px;font-size:11px;display:block}.mfield .v{font-variant-numeric:tabular-nums;font-size:20px;font-weight:700}.mfield .v em{color:var(--muted);margin-left:2px;font-size:11px;font-style:normal;font-weight:400}.mfield .v.empty{color:#444;font-size:15px;font-weight:400}.mfield-input{border:1px solid var(--accent-dim);width:84px;height:40px;color:var(--accent);text-align:right;background:#000;border-radius:8px;padding:0 8px;font-size:18px;font-weight:700}.mfield-input::placeholder{color:#444;font-size:13px;font-weight:400}.mfield-inputwrap{align-items:center;gap:6px;display:flex}.mfield-unit{color:var(--muted);min-width:16px;font-size:12px}.cal-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.cal-head .m{font-size:18px;font-weight:600}.cal-head button{background:var(--raised);border:1px solid var(--border);width:40px;height:40px;color:var(--text);border-radius:10px;font-size:16px}.dow,.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.dow div{text-align:center;color:var(--muted);padding:6px 0;font-size:11px}.dow div.sun{color:var(--sunday)}.dow div.sat{color:var(--saturday)}.cal-grid button{aspect-ratio:1;background:var(--surface);font-variant-numeric:tabular-nums;color:var(--text);border:none;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:14px;display:flex}.cal-grid button.off{color:var(--calendar-muted);background:0 0}.cal-grid button.today{border:1.5px solid var(--accent)}.cal-grid button.sel{background:var(--raised);border:1.5px solid var(--accent-dim)}.cal-grid .dot{background:var(--accent);border-radius:50%;width:5px;height:5px}.cal-legend{color:var(--muted);align-items:center;gap:14px;margin-top:14px;font-size:11px;display:flex}.cal-legend i{background:var(--accent);border-radius:50%;width:5px;height:5px;margin-right:5px;display:inline-block}.cal-summary{margin-top:14px}.ex-row{background:var(--surface);border:1px solid var(--border);border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:13px 12px;display:flex}.ex-row .n{font-size:14px}.ex-row .n em{color:var(--accent);margin-left:4px;font-size:11px;font-style:normal}.ex-row .actions{flex:none;gap:6px;display:flex}.ex-row button{border:1px solid var(--border);color:var(--muted);background:0 0;border-radius:8px;padding:6px 10px;font-size:12px}.ex-form{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.ex-form input[type=text],.ex-form select{height:var(--tap);border:1px solid var(--border);background:var(--raised);color:var(--text);border-radius:10px;padding:0 12px;font-size:16px}.ex-form label.checkbox{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.sec-ttl{color:var(--muted);letter-spacing:.06em;margin:16px 0 7px;font-size:11px}.set-item{background:var(--surface);border:1px solid var(--border);color:inherit;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin-bottom:7px;padding:13px 12px;font-size:14px;text-decoration:none;display:flex}.set-item .k span{color:var(--muted);margin-top:3px;font-size:11px;line-height:1.5;display:block}.set-item .v{color:var(--accent);font-variant-numeric:tabular-nums;font-size:14px}.set-item input[type=number]{border:1px solid var(--accent-dim);width:80px;height:40px;color:var(--accent);text-align:center;background:#000;border-radius:8px;font-size:16px}.sw{background:#333;border:none;border-radius:999px;flex:none;width:46px;height:27px;padding:0;position:relative}.sw:after{content:"";background:#888;border-radius:50%;width:21px;height:21px;transition:left .15s;position:absolute;top:3px;left:3px}.sw.on{background:var(--accent)}.sw.on:after{background:#000;left:22px}.tfull-shell{background:var(--bg);flex:1;min-height:0;display:flex}.tfull{min-height:0;padding:calc(20px + env(safe-area-inset-top,0px)) 20px 20px;background:radial-gradient(120% 80% at 50% 30%, #1a0c00 0%, var(--bg) 62%);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:8px;display:flex;position:relative}.tfull-close{top:calc(20px + env(safe-area-inset-top,0px));border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;min-height:44px;padding:0;font-size:26px;line-height:1;display:flex;position:absolute;left:20px}.tfull .ex{color:var(--muted);font-size:14px}.tfull .big{font-variant-numeric:tabular-nums;letter-spacing:-.03em;color:var(--accent);font-size:92px;font-weight:800;line-height:1}.tfull .of{color:var(--muted);margin-bottom:20px;font-size:12px}.ring{background:#241100;border-radius:2px;width:100%;height:4px;margin-bottom:26px}.ring i{background:var(--accent);border-radius:2px;height:100%;transition:width .3s linear;display:block}.tfull .ctrls{grid-template-columns:1fr 1fr 1fr;gap:10px;width:100%;display:grid}.tfull .ctrls button{background:var(--raised);border:1px solid var(--border);height:56px;color:var(--text);border-radius:12px;font-size:15px}.tfull .stop{background:var(--accent);color:#000;border:none;border-radius:12px;width:100%;height:56px;margin-top:10px;font-size:16px;font-weight:700}.wake{color:var(--muted);align-items:center;gap:6px;margin-top:16px;font-size:11px;display:flex}.wake i{background:var(--ok);border-radius:50%;width:6px;height:6px;display:block}
