@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-thai-400-normal-Bt1rR4gi.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-thai-600-normal-DvfsyWAn.woff2)format("woff2");unicode-range:U+2D7,U+303,U+331,U+E01-E5B,U+200C-200D,U+25CC}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-thai-latin-400-normal-CwmoKdEh.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans Thai;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-thai-latin-600-normal-BR-dhaTH.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f6f8;--surface:#fff;--surface-2:#eef0f3;--surface-3:#e4e7ec;--border:#e1e4e9;--border-strong:#c9ced6;--text:#13161b;--text-2:#4f5663;--text-3:#7d8491;--overlay:#0f121861;--accent:#3552d8;--accent-hover:#2b45bd;--accent-soft:#e9edfc;--accent-text:#2c47c4;--on-accent:#fff;--focus-ring:#3552d8;--ok:#1d7f52;--ok-soft:#e3f4ec;--warn:#9a5b00;--warn-soft:#fbf0dc;--danger:#b9352b;--danger-soft:#fbe7e5;--buffer-fill:repeating-linear-gradient(135deg, #eef0f3 0 6px, #f5f6f8 6px 12px);--now-line:#d6443a;--g1:#3552d8;--g1-soft:#e6ebfc;--g1-text:#2a42ad;--g2:#0f8a6e;--g2-soft:#def3ed;--g2-text:#0b6a54;--g3:#c2410c;--g3-soft:#fcebe1;--g3-text:#9a330a;--g4:#8b3fd1;--g4-soft:#f1e7fb;--g4-text:#6e2fae;--g5:#b8860b;--g5-soft:#f8f0d6;--g5-text:#7f5d06;--g6:#c0367a;--g6-soft:#fbe6f0;--g6-text:#9b2a62;--g7:#0e7fa8;--g7-soft:#dff1f8;--g7-text:#0a6283;--g8:#5b6b2f;--g8-soft:#edf1df;--g8-text:#47541f;--g9:#6b5b4e;--g9-soft:#f0ebe7;--g9-text:#54463b;--g10:#5a6270;--g10-soft:#eceef1;--g10-text:#434956;--font:"IBM Plex Sans Thai", system-ui, -apple-system, "Segoe UI", "Noto Sans Thai", sans-serif;--fs-xs:.75rem;--fs-sm:.8125rem;--fs-md:.9375rem;--fs-lg:1.0625rem;--fs-xl:1.3125rem;--fs-2xl:1.75rem;--fs-3xl:2.375rem;--fw-regular:400;--fw-bold:600;--lh:1.55;--lh-tight:1.25;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s8:32px;--s10:40px;--s12:48px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:22px;--r-full:999px;--shadow-1:0 1px 2px #1018280f, 0 1px 3px #1018280d;--shadow-2:0 8px 24px #1018281f, 0 2px 6px #1018280f;--t-fast:90ms;--t:.14s;--ease:cubic-bezier(.2, 0, 0, 1);--tap:44px;--nav-h:64px;--sidebar-w:232px;--content-max:1180px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0f13;--surface:#16191f;--surface-2:#1e222a;--surface-3:#272c35;--border:#262b33;--border-strong:#363c47;--text:#eceef2;--text-2:#a8afbb;--text-3:#757d8a;--overlay:#0000008c;--accent:#7d93ff;--accent-hover:#93a6ff;--accent-soft:#1d2444;--accent-text:#a5b4ff;--on-accent:#0d0f13;--focus-ring:#93a6ff;--ok:#4cc28d;--ok-soft:#13291f;--warn:#e0a640;--warn-soft:#2d2412;--danger:#f07a70;--danger-soft:#331a18;--buffer-fill:repeating-linear-gradient(135deg, #1e222a 0 6px, #16191f 6px 12px);--now-line:#f07a70;--g1:#7d93ff;--g1-soft:#1c2346;--g1-text:#b3c0ff;--g2:#3cc39f;--g2-soft:#10291f;--g2-text:#8fe0c8;--g3:#f08a55;--g3-soft:#2f1c12;--g3-text:#f7b892;--g4:#b98cf0;--g4-soft:#261a36;--g4-text:#d6bdf7;--g5:#e0b84a;--g5-soft:#2c2410;--g5-text:#efd589;--g6:#ec7fb3;--g6-soft:#321826;--g6-text:#f5b4d3;--g7:#4fb8e0;--g7-soft:#10262f;--g7-text:#98d6ee;--g8:#a8bc6e;--g8-soft:#1f2513;--g8-text:#cad8a0;--g9:#bba696;--g9-soft:#272220;--g9-text:#d8cabd;--g10:#9aa2af;--g10-soft:#22262d;--g10-text:#c5cad3;--shadow-1:0 1px 2px #0006;--shadow-2:0 10px 28px #00000080, 0 2px 6px #00000059}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0d0f13;--surface:#16191f;--surface-2:#1e222a;--surface-3:#272c35;--border:#262b33;--border-strong:#363c47;--text:#eceef2;--text-2:#a8afbb;--text-3:#757d8a;--overlay:#0000008c;--accent:#7d93ff;--accent-hover:#93a6ff;--accent-soft:#1d2444;--accent-text:#a5b4ff;--on-accent:#0d0f13;--focus-ring:#93a6ff;--ok:#4cc28d;--ok-soft:#13291f;--warn:#e0a640;--warn-soft:#2d2412;--danger:#f07a70;--danger-soft:#331a18;--buffer-fill:repeating-linear-gradient(135deg, #1e222a 0 6px, #16191f 6px 12px);--now-line:#f07a70;--g1:#7d93ff;--g1-soft:#1c2346;--g1-text:#b3c0ff;--g2:#3cc39f;--g2-soft:#10291f;--g2-text:#8fe0c8;--g3:#f08a55;--g3-soft:#2f1c12;--g3-text:#f7b892;--g4:#b98cf0;--g4-soft:#261a36;--g4-text:#d6bdf7;--g5:#e0b84a;--g5-soft:#2c2410;--g5-text:#efd589;--g6:#ec7fb3;--g6-soft:#321826;--g6-text:#f5b4d3;--g7:#4fb8e0;--g7-soft:#10262f;--g7-text:#98d6ee;--g8:#a8bc6e;--g8-soft:#1f2513;--g8-text:#cad8a0;--g9:#bba696;--g9-soft:#272220;--g9-text:#d8cabd;--g10:#9aa2af;--g10-soft:#22262d;--g10-text:#c5cad3;--shadow-1:0 1px 2px #0006;--shadow-2:0 10px 28px #00000080, 0 2px 6px #00000059}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:var(--fs-md);line-height:var(--lh);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3{line-height:var(--lh-tight);font-weight:var(--fw-bold)}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--accent-text)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.num{font-variant-numeric:tabular-nums}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important}}.app{flex-direction:column;min-height:100dvh;display:flex}.topbar{z-index:20;align-items:center;gap:var(--s3);min-height:56px;padding:var(--s2) var(--s4);padding-top:max(var(--s2), env(safe-area-inset-top));background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(10px);backdrop-filter:saturate(1.4)blur(10px);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.topbar h1{font-size:var(--fs-xl);flex:1}.main{width:100%;max-width:var(--content-max);padding:var(--s4);padding-bottom:calc(var(--nav-h) + var(--s12) + env(safe-area-inset-bottom));flex:1;margin:0 auto}.nav{z-index:30;height:calc(var(--nav-h) + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);background:var(--surface);border-top:1px solid var(--border);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;inset:auto 0 0}.nav a{min-height:var(--tap);color:var(--text-3);font-size:var(--fs-xs);font-weight:var(--fw-bold);transition:color var(--t-fast) var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:2px;text-decoration:none;display:flex}.nav a[aria-current=page]{color:var(--accent-text)}.nav svg{width:24px;height:24px}.nav .brand,.nav .nav-more{display:none}@media (min-width:768px){.app{grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:auto 1fr;display:grid}.nav{gap:var(--s1);height:100dvh;padding:var(--s5) var(--s3);border-top:0;border-right:1px solid var(--border);flex-direction:column;grid-row:1/span 2;display:flex;position:sticky;top:0}.nav .brand{padding:var(--s2) var(--s3) var(--s5);font-size:var(--fs-xl);font-weight:var(--fw-bold);color:var(--text);display:block}.nav a{justify-content:flex-start;gap:var(--s3);padding:var(--s2) var(--s3);border-radius:var(--r-md);font-size:var(--fs-md);color:var(--text-2);flex-direction:row}.nav a:hover{background:var(--surface-2)}.nav a[aria-current=page]{background:var(--accent-soft)}.nav .nav-more{margin-top:auto;display:flex}.nav svg{width:20px;height:20px}.topbar{padding:var(--s3) var(--s6);grid-column:2}.main{padding:var(--s6);padding-bottom:var(--s12);grid-column:2}}.stack{gap:var(--s4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--s2);display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.muted{color:var(--text-2)}.faint{color:var(--text-3)}.small{font-size:var(--fs-sm)}.xs{font-size:var(--fs-xs)}.cols{gap:var(--s4);display:grid}@media (min-width:768px){.cols-2{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:start}.cols-3{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,.9fr);align-items:start}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s4);box-shadow:var(--shadow-1)}.card>h2,.section-title{font-size:var(--fs-sm);font-weight:var(--fw-bold);color:var(--text-2);margin-bottom:var(--s3);letter-spacing:.01em}.btn{justify-content:center;align-items:center;gap:var(--s2);min-height:var(--tap);padding:0 var(--s4);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text);font-weight:var(--fw-bold);cursor:pointer;transition:background var(--t-fast) var(--ease), transform var(--t-fast) var(--ease);-webkit-user-select:none;user-select:none;text-decoration:none;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover)}.btn-ghost{background:0 0;border-color:#0000}.btn-danger{color:var(--danger)}.btn-lg{min-height:56px;font-size:var(--fs-lg);border-radius:var(--r-lg);padding:0 var(--s6)}.btn-sm{min-height:36px;padding:0 var(--s3);font-size:var(--fs-sm)}.btn-block{width:100%}.icon-btn{width:var(--tap);height:var(--tap);border-radius:var(--r-full);color:var(--text-2);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.icon-btn:hover{background:var(--surface-2)}.icon-btn svg{width:22px;height:22px}.chips{gap:var(--s2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--s1);min-height:36px;padding:0 var(--s3);border-radius:var(--r-full);border:1px solid var(--border-strong);background:var(--surface);color:var(--text-2);font-size:var(--fs-sm);font-weight:var(--fw-bold);cursor:pointer;white-space:nowrap;display:inline-flex}.chip[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.badge{padding:1px var(--s2);border-radius:var(--r-full);background:var(--surface-2);color:var(--text-2);font-size:var(--fs-xs);font-weight:var(--fw-bold);white-space:nowrap;align-items:center;gap:3px;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent-text)}.badge-warn{background:var(--warn-soft);color:var(--warn)}.badge-danger{background:var(--danger-soft);color:var(--danger)}.badge-ok{background:var(--ok-soft);color:var(--ok)}.field{gap:var(--s1);flex-direction:column;display:flex}.field>span{font-size:var(--fs-sm);color:var(--text-2);font-weight:var(--fw-bold)}.input{width:100%;min-height:var(--tap);padding:var(--s2) var(--s3);border-radius:var(--r-md);border:1px solid var(--border-strong);background:var(--surface);color:var(--text)}.input:focus{outline:2px solid var(--focus-ring);outline-offset:-1px;border-color:#0000}textarea.input{resize:vertical;min-height:88px}.list{margin:0;padding:0;list-style:none}.list>li+li{border-top:1px solid var(--border)}.list-row{align-items:center;gap:var(--s3);min-height:52px;padding:var(--s2) 0;display:flex}.empty{align-items:center;gap:var(--s2);text-align:center;padding:var(--s8) var(--s4);color:var(--text-2);flex-direction:column;display:flex}.empty strong{color:var(--text);font-size:var(--fs-lg)}.segmented{border-radius:var(--r-md);background:var(--surface-2);gap:2px;padding:3px;display:inline-flex}.segmented button{min-height:36px;padding:0 var(--s3);border-radius:calc(var(--r-md) - 3px);color:var(--text-2);font-weight:var(--fw-bold);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:0}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-1)}.sheet-backdrop{z-index:50;background:var(--overlay);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--surface);border-radius:var(--r-xl) var(--r-xl) 0 0;width:100%;max-height:92dvh;padding:var(--s4);padding-bottom:max(var(--s4), env(safe-area-inset-bottom));box-shadow:var(--shadow-2);overflow:auto}@media (min-width:768px){.sheet-backdrop{align-items:center}.sheet{border-radius:var(--r-xl);max-width:560px;padding:var(--s6)}}.sheet-head{align-items:center;gap:var(--s2);margin-bottom:var(--s3);display:flex}.sheet-head h2{font-size:var(--fs-lg);flex:1}.fab{right:var(--s4);bottom:calc(var(--nav-h) + var(--s4) + env(safe-area-inset-bottom));z-index:40;align-items:center;gap:var(--s2);height:56px;padding:0 var(--s5);border-radius:var(--r-full);background:var(--accent);color:var(--on-accent);font-weight:var(--fw-bold);font-size:var(--fs-md);box-shadow:var(--shadow-2);cursor:pointer;border:0;display:inline-flex;position:fixed}.fab svg{width:22px;height:22px}@media (min-width:768px){.fab{bottom:var(--s6);right:var(--s6)}}.toast-region{left:50%;bottom:calc(var(--nav-h) + 84px + env(safe-area-inset-bottom));z-index:60;gap:var(--s2);pointer-events:none;flex-direction:column;width:min(92vw,440px);display:flex;position:fixed;transform:translate(-50%)}@media (min-width:768px){.toast-region{bottom:var(--s6)}}.toast{pointer-events:auto;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);background:var(--text);color:var(--bg);font-size:var(--fs-sm);box-shadow:var(--shadow-2);display:flex}.toast button{color:inherit;font-weight:var(--fw-bold);cursor:pointer;background:0 0;border:0;min-height:32px;text-decoration:underline}.banner{align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);border-radius:var(--r-md);font-size:var(--fs-sm);display:flex}.banner-warn{background:var(--warn-soft);color:var(--warn)}.banner-danger{background:var(--danger-soft);color:var(--danger)}.banner-info{background:var(--accent-soft);color:var(--accent-text)}.group-dot{border-radius:var(--r-full);flex:none;width:10px;height:10px;display:inline-block}.sync-dot{font-size:var(--fs-xs);color:var(--text-3)}@media (min-width:768px){.topbar .more-btn{display:none}}.login{min-height:100dvh;padding:var(--s4);place-items:center;display:grid}.login-card{align-items:center;gap:var(--s3);text-align:center;width:min(100%,380px);padding:var(--s8) var(--s6);flex-direction:column;display:flex}.login-card h1{font-size:var(--fs-2xl)}.login-card .btn{margin-top:var(--s3)}.more-link{color:var(--text);font-weight:var(--fw-bold);text-decoration:none}.input-lg{min-height:52px;font-size:var(--fs-lg)}.chip-row{gap:var(--s1);flex-direction:column;display:flex}.chip-row-label{font-size:var(--fs-xs);color:var(--text-3);font-weight:var(--fw-bold)}.add-sheet .chips{scrollbar-width:none;margin:0 calc(-1 * var(--s4));padding:2px var(--s4);flex-wrap:nowrap;overflow-x:auto}.add-sheet .chips::-webkit-scrollbar{display:none}@media (min-width:768px){.add-sheet .chips{flex-wrap:wrap;margin:0;padding:0}}.more-toggle{color:var(--accent-text);align-self:flex-start}.today-date{margin-bottom:var(--s3)}.today>.banner{margin-bottom:var(--s3);text-decoration:none}.section-head{margin-bottom:var(--s2)}.section-head h2{font-size:var(--fs-sm);color:var(--text-2)}.countdowns{gap:var(--s2);scrollbar-width:none;margin:0 calc(-1 * var(--s4)) var(--s4);padding:2px var(--s4);display:flex;overflow-x:auto}.countdowns::-webkit-scrollbar{display:none}.countdown{min-width:132px;padding:var(--s3) var(--s4);border-radius:var(--r-lg);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-1);cursor:pointer;text-align:left;flex-direction:column;flex:none;align-items:flex-start;gap:2px;display:flex}.countdown-title{font-size:var(--fs-sm);color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;max-width:180px;overflow:hidden}.countdown-left{font-size:var(--fs-xl);font-weight:var(--fw-bold)}.countdown-add{min-width:120px;box-shadow:none;color:var(--text-3);font-weight:var(--fw-bold);font-size:var(--fs-sm);background:0 0;border-style:dashed;justify-content:center;align-items:center}@media (min-width:768px){.countdowns{margin:0 0 var(--s4);flex-wrap:wrap;padding:2px 0}}.now-card{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow-1)}.now-item+.now-item{margin-top:var(--s4);padding-top:var(--s4);border-top:1px solid var(--border)}.now-item.is-paused .now-clock{color:var(--text-3)}.now-title{font-size:var(--fs-lg);margin-top:var(--s2)}.now-clock{font-size:var(--fs-3xl);font-weight:var(--fw-bold);letter-spacing:-.01em;margin:var(--s1) 0 var(--s3)}.now-actions{gap:var(--s2);grid-template-columns:repeat(3,1fr);display:grid}.now-actions .btn{padding:0 var(--s2);gap:var(--s1);white-space:nowrap;font-size:var(--fs-sm)}.next-card h2{margin-bottom:var(--s1)}.next-title{font-size:var(--fs-lg);font-weight:var(--fw-bold);margin-bottom:var(--s3)}.task-row{align-items:center;gap:var(--s2);min-height:56px;display:flex}.task-row .check{width:var(--tap);height:var(--tap);margin-left:calc(-1 * var(--s2));cursor:pointer;color:var(--on-accent);background:0 0;border:0;flex:none;place-items:center;display:grid}.task-row .check:before{content:"";border-radius:var(--r-full);border:2px solid var(--border-strong);grid-area:1/1;width:22px;height:22px}.task-row .check svg{z-index:1;grid-area:1/1}.task-row .check[aria-pressed=true]:before{background:var(--ok);border-color:var(--ok)}.task-main{min-width:0;padding:var(--s2) 0;text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:flex-start;gap:3px;display:flex}.task-title{font-weight:var(--fw-bold);overflow-wrap:anywhere}.task-row.is-done .task-title{color:var(--text-3);text-decoration:line-through}.task-meta{align-items:center;gap:var(--s1);flex-wrap:wrap;display:flex}.start-btn{color:var(--accent-text)}.order-btns{gap:2px;display:inline-flex}.order-btn{border-radius:var(--r-sm);background:var(--surface-2);min-width:28px;height:24px;color:var(--text-2);font-size:var(--fs-xs);place-items:center;display:inline-grid}.side-links{padding:var(--s2) var(--s4)}.side-link{min-height:48px;color:var(--text);font-weight:var(--fw-bold);align-items:center;text-decoration:none;display:flex}.side-link+.side-link{border-top:1px solid var(--border)}.rating-card{gap:var(--s3);background:var(--ok-soft);border-color:#0000;flex-direction:column;display:flex}.rating-row{gap:var(--s1);flex-direction:column;display:flex}.detail-grid{gap:var(--s3);grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));display:grid}.detail-grid>*,.detail-grid .input{min-width:0}.field-check{min-height:var(--tap);align-self:end}.detail-actions{padding-top:var(--s2);border-top:1px solid var(--border)}.inset-card{margin-top:var(--s3);box-shadow:none;background:var(--surface-2)}.inbox-item{gap:var(--s2);padding:var(--s3) 0;flex-direction:column;display:flex}.inbox-text{white-space:pre-wrap;overflow-wrap:anywhere}.group-row{min-height:48px}.group-name{align-items:center;gap:var(--s2);min-height:var(--tap);font-weight:var(--fw-bold);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.color-swatch{border-radius:var(--r-full);cursor:pointer;border:3px solid #0000;width:36px;height:36px}.color-swatch.is-on{border-color:var(--text)}.select-inline{width:auto;min-height:42px}.text-danger{color:var(--danger)}details>summary{cursor:pointer;list-style:none}details>summary::-webkit-details-marker{display:none}details[open]>summary{margin-bottom:var(--s2)}.checklist-row{align-items:center;gap:var(--s2);min-height:44px;display:flex}.checklist-row input[type=checkbox]{width:20px;height:20px;accent-color:var(--ok)}.checklist-text{min-width:0;padding:var(--s2) 0;background:0 0;border:0;flex:1}.checklist-text.is-done{color:var(--text-3);text-decoration:line-through}.checklist+form{margin-top:var(--s2)}button.order-btn{cursor:pointer;border:0}button.order-btn:disabled{opacity:.35;cursor:default}.attachments{margin:0 0 var(--s3);gap:var(--s2);grid-template-columns:repeat(auto-fill,minmax(140px,1fr));padding:0;list-style:none;display:grid}.attachment{gap:var(--s1);padding:var(--s2);border-radius:var(--r-md);background:var(--surface-2);flex-direction:column;min-width:0;display:flex}.attachment-text,.attachment-link,.attachment-file{grid-column:1/-1}.attachment-thumb{aspect-ratio:4/3;border-radius:var(--r-sm);background:var(--surface-3);display:block;overflow:hidden}.attachment-thumb img{object-fit:cover;width:100%;height:100%;display:block}.attachment-loading{font-size:var(--fs-xs);color:var(--text-3);place-items:center;display:grid}.attachment-body{overflow-wrap:anywhere;font-size:var(--fs-sm)}.attachment-text{white-space:pre-wrap}.attachment-actions{justify-content:flex-end}.timeline{gap:var(--s2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.tl-item{gap:var(--s2);grid-template-columns:48px 1fr;align-items:stretch;display:grid;position:relative}.tl-time{font-size:var(--fs-xs);color:var(--text-3);padding-top:6px}.tl-block{min-height:var(--tap);padding:var(--s2) var(--s3);border-radius:var(--r-md);border:0;border-left:4px solid var(--border-strong);background:var(--surface-2);color:var(--text);text-align:left;cursor:pointer;flex-direction:column;align-items:flex-start;gap:2px;width:100%;display:flex}.tl-title{align-items:center;gap:var(--s1);font-weight:var(--fw-bold);overflow-wrap:anywhere;display:inline-flex}.tl-meta{gap:var(--s1);font-size:var(--fs-xs);opacity:.85;flex-wrap:wrap;display:flex}.tl-fixed .tl-block,.tl-special .tl-block{background:var(--surface-3);color:var(--text-2);border-left-color:var(--text-3)}.tl-leisure .tl-block{background:var(--ok-soft);color:var(--ok);border-left-color:var(--ok)}.tl-interruption .tl-block{background:var(--warn-soft);color:var(--warn);border-left-color:var(--warn)}.tl-buffer .tl-block{background:var(--buffer-fill);color:var(--text-3);cursor:default;border-left-color:#0000;min-height:32px}.tl-item.is-past .tl-block{opacity:.55}.tl-now{background:var(--now-line);height:2px;position:absolute;top:-5px;left:0;right:0}.timeline>.tl-now{margin-top:var(--s1);position:static}.tl-now:before{content:"";border-radius:var(--r-full);background:var(--now-line);width:10px;height:10px;position:absolute;top:-4px;left:40px}.today-actions{gap:var(--s2);grid-template-columns:1fr 1fr;display:grid}.today-actions .btn[aria-pressed=true]{background:var(--accent-soft);border-color:var(--accent);color:var(--accent-text)}.warn-card{border-color:var(--warn);background:var(--warn-soft);gap:var(--s2);flex-direction:column;display:flex}.question-card{gap:var(--s2);flex-direction:column;display:flex}.change-bar{margin-bottom:var(--s3);flex-direction:column;align-items:stretch}.change-list{margin:var(--s1) 0 0;padding-left:var(--s5)}.why ul{padding-left:var(--s5);gap:var(--s1);flex-direction:column;margin:0;display:flex}.free-pick{text-align:left;cursor:pointer;background:0 0;border:0;width:100%}.sched-toolbar{align-items:center;gap:var(--s2) var(--s3);margin-bottom:var(--s3);flex-wrap:wrap;display:flex}.sched-title{flex:1;min-width:140px}.sched-layout{gap:var(--s4);display:grid}.sched-someday{display:none}@media (min-width:1100px){.sched-layout{grid-template-columns:minmax(0,1fr) 240px;align-items:start}.sched-someday{gap:var(--s2);flex-direction:column;display:flex}}.sched-main{padding:var(--s2);overflow:hidden}.sched-hint{padding:var(--s2)}.tg-head,.tg-body{display:grid}.tg-head{z-index:2;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:56px}.tg-day{padding:var(--s2) 2px;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:2px;min-width:0;display:flex}.tg-day.is-today .tg-day-label{color:var(--accent-text)}.tg-day-label{font-weight:var(--fw-bold);font-size:var(--fs-sm)}.tg-day-sub{font-size:var(--fs-xs);color:var(--text-3);white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.tg-hours{position:relative}.tg-hours span{font-size:var(--fs-xs);color:var(--text-3);position:absolute;right:6px;transform:translateY(-50%)}.tg-cols{display:grid;position:relative}.tg-col{border-left:1px solid var(--border);cursor:copy;position:relative}.tg-line{border-top:1px dashed var(--border);pointer-events:none;position:absolute;left:0;right:0}.tg-now{border-top:2px solid var(--now-line);z-index:3;pointer-events:none;position:absolute;left:0;right:0}.tg-block{z-index:1;border-radius:var(--r-sm);border-left:3px solid var(--border-strong);background:var(--surface-2);font-size:var(--fs-xs);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:pan-y;flex-direction:column;gap:1px;padding:2px 6px;line-height:1.3;display:flex;position:absolute;left:2px;right:2px;overflow:hidden}.tg-block.is-draggable{cursor:grab}.tg-block.is-dragging{z-index:5;box-shadow:var(--shadow-2);cursor:grabbing;opacity:.92;touch-action:none}.tg-block.is-risk{outline:2px solid var(--danger);outline-offset:-2px}.tg-fixed,.tg-special{background:var(--surface-3);color:var(--text-2);border-left-color:var(--text-3);cursor:default}.tg-leisure{background:var(--ok-soft);color:var(--ok);border-left-color:var(--ok)}.tg-interruption{background:var(--warn-soft);color:var(--warn);border-left-color:var(--warn)}.tg-buffer{background:var(--buffer-fill);color:var(--text-3);border-left-color:#0000}.tg-title{font-weight:var(--fw-bold);text-overflow:ellipsis;align-items:center;gap:2px;display:inline-flex;overflow:hidden}.tg-resize{cursor:ns-resize;height:8px;position:absolute;bottom:0;left:0;right:0}.month-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.month-head span{text-align:center;font-size:var(--fs-xs);color:var(--text-3);padding:var(--s1) 0}.month-cell{min-height:64px;padding:var(--s1) var(--s2);border-radius:var(--r-sm);border:1px solid var(--border);background:var(--surface);cursor:pointer;text-align:left;flex-direction:column;align-items:flex-start;gap:4px;display:flex}.month-cell.is-out{opacity:.45}.month-cell.is-today{border-color:var(--accent)}.month-cell.is-special{background:var(--warn-soft)}.month-day{font-weight:var(--fw-bold);font-size:var(--fs-sm)}.month-bar{border-radius:var(--r-full);background:var(--surface-2);width:100%;height:6px;display:block;overflow:hidden}.month-bar span{background:var(--accent);height:100%;display:block}.month-bar span.is-full{background:var(--warn)}.month-special,.month-min{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:10px;overflow:hidden}.why-inline{margin:var(--s1) 0 0;padding-left:var(--s5);color:var(--text-2)}
