/*! tailwindcss v4.3.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}@layer theme{:root,:host{--font-sans:"Inter", ui-sans-serif, system-ui, sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-white:#fff;--spacing:.25rem;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--tracking-normal:0em;--tracking-wide:.025em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-tight:1.25;--leading-snug:1.375;--leading-relaxed:1.625;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-cond:"Barlow Condensed", "Arial Narrow", ui-sans-serif, sans-serif;--color-bg:#f3f4f6;--color-card:#fff;--color-ink:#0b0d10;--color-ink-2:#4b5260;--color-ink-3:#8a919e;--color-line:#e6e8ec;--color-track:#edeff2;--color-green:#00e07a;--color-green-ink:#00a85b;--color-green-soft:#e3fbef;--color-cyan:#00c2ff;--color-cyan-ink:#0090c2;--color-cyan-soft:#e0f6ff;--color-lime:#b6f01f;--color-lime-ink:#6e9a00;--color-lime-soft:#f3fcdc;--color-blue:#2f6bff;--color-blue-ink:#1f4fd1;--color-blue-soft:#e7eeff;--color-orange:#ff7a1a;--color-orange-ink:#d95f00;--color-orange-soft:#fff0e5;--color-red:#ff3b5c;--color-red-ink:#d61f42;--color-red-soft:#ffe7ec;--color-violet:#8b5cff;--color-violet-ink:#6b3fe0;--color-violet-soft:#f0ebff;--color-green-mark:#00c26a;--color-cyan-mark:#00aeeb;--color-lime-mark:#8cc400;--color-violet-mark:#8b5cff;--color-blue-mark:#2f6bff;--color-orange-mark:#ff7a1a;--color-red-mark:#ff3b5c;--color-neutral-mark:#8a919e;--radius-card:18px}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{-webkit-tap-highlight-color:transparent}body{font-size:14px;line-height:1.45}[x-cloak]{display:none!important}:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}}@layer components{.cond{font-family:var(--font-cond);text-transform:uppercase;letter-spacing:.02em}.label{font-family:var(--font-cond);letter-spacing:.08em;text-transform:uppercase;color:var(--color-ink-3);font-size:13px;font-weight:600}.eyebrow{font-family:var(--font-cond);letter-spacing:.12em;text-transform:uppercase;color:var(--color-ink-3);font-size:14px;font-weight:600}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:22px;display:flex}.page-title{font-family:var(--font-cond);text-transform:uppercase;font-size:34px;font-weight:800;line-height:.95}@media (min-width:768px){.page-title{font-size:42px}}.big-number{font-family:var(--font-cond);font-weight:800;line-height:.9}.big-number small{color:var(--color-ink-3);letter-spacing:.06em;margin-left:2px;font-size:.45em;font-weight:600}.card{background:var(--color-card);border:1px solid var(--color-line);border-radius:var(--radius-card);padding:18px;animation:.45s cubic-bezier(.2,.7,.2,1) backwards rise}@media (min-width:768px){.card{padding:22px}}.card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.card-title{font-family:var(--font-cond);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:10px;font-size:20px;font-weight:700;display:flex}.dot{border-radius:9999px;flex-shrink:0;width:8px;height:8px}.btn{white-space:nowrap;cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;transition:background .15s,color .15s,border-color .15s,transform .1s;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-dark{background:var(--color-ink);color:#fff}.btn-dark:hover{background:#262a31}.btn-light{background:var(--color-card);border:1px solid var(--color-line);color:var(--color-ink)}.btn-light:hover{border-color:var(--color-ink-3)}.btn-ghost{color:var(--color-ink-3);padding:8px 10px}.btn-ghost:hover{background:var(--color-bg);color:var(--color-ink)}.btn-sm{padding:6px 10px;font-size:12.5px}.btn-lg{border-radius:12px;padding:12px 18px;font-size:14px}.input{background:var(--color-card);border:1px solid var(--color-line);width:100%;color:var(--color-ink);border-radius:12px;outline:none;padding:11px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.input::placeholder{color:var(--color-ink-3)}.input:focus{border-color:var(--color-ink);box-shadow:0 0 0 4px #0b0d100f}.field-label{margin-bottom:6px;display:block}.nav-item{font-family:var(--font-cond);letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink-2);border-radius:12px;align-items:center;gap:12px;padding:10px 12px;font-size:16px;font-weight:600;transition:background .15s,color .15s;display:flex}.nav-item:hover{background:var(--color-bg);color:var(--color-ink)}.nav-item.is-active{background:var(--color-ink);color:#fff}.nav-item.is-active svg{color:var(--color-green)}.nav-item svg{flex-shrink:0;width:19px;height:19px}.nav-item-sub{color:var(--color-ink-3);padding:8px 12px;font-size:14px}.tab{font-family:var(--font-cond);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-3);flex-direction:column;align-items:center;gap:3px;font-size:11px;font-weight:600;display:flex}.tab svg{width:22px;height:22px}.tab.is-active{color:var(--color-ink)}.tab.is-active svg{color:var(--color-green-ink)}.progress-ring{flex-shrink:0;place-items:center;display:grid;position:relative}.progress-ring svg{width:100%;height:100%;display:block;transform:rotate(-90deg)}.progress-ring-track{stroke:var(--color-track)}.progress-ring-bar{stroke-linecap:round;transition:stroke-dashoffset 1.2s cubic-bezier(.2,.8,.2,1)}.progress-ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.week{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.day{text-align:center;border-radius:12px;padding:8px 0 10px}.day-label{font-family:var(--font-cond);letter-spacing:.1em;text-transform:uppercase;color:var(--color-ink-3);font-size:12px;font-weight:600}.day-number{font-family:var(--font-cond);font-size:18px;font-weight:700;line-height:1.1}.day.is-today{background:var(--color-ink);color:#fff}.day.is-today .day-label{color:#fff9}.day.is-future .day-number{color:var(--color-ink-3)}.tag{font-family:var(--font-cond);letter-spacing:.06em;background:var(--color-blue-soft);color:var(--color-blue-ink);border-radius:5px;padding:0 6px;font-size:12px;font-weight:600}.pill{border-radius:9999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.pill-ok{background:var(--color-green-soft);color:var(--color-green-ink)}.pill-off{background:var(--color-bg);color:var(--color-ink-2)}.pill-warn{background:var(--color-orange-soft);color:var(--color-orange-ink)}.lot-badge{font-family:var(--font-cond);letter-spacing:.1em;background:var(--color-ink);color:var(--color-green);border-radius:6px;padding:1px 7px;font-size:12px;font-weight:700}.empty{border:1.5px dashed var(--color-line);color:var(--color-ink-3);border-radius:14px;flex-direction:column;align-items:flex-start;gap:8px;padding:18px;font-size:13px;display:flex}.toasts{z-index:50;left:16px;right:16px;bottom:calc(84px + env(safe-area-inset-bottom));pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:fixed}@media (min-width:768px){.toasts{align-items:flex-end;bottom:24px;left:auto;right:24px}}.toast{pointer-events:auto;background:var(--color-ink);color:#fff;border-radius:12px;align-items:center;gap:10px;max-width:360px;padding:11px 16px;font-size:13px;font-weight:500;display:flex;box-shadow:0 10px 30px #0b0d102e}.toast:before{content:"";background:var(--color-blue);border-radius:9999px;flex-shrink:0;width:8px;height:8px}.toast-success:before{background:var(--color-green)}.toast-error:before{background:var(--color-red)}.nav-count{font-family:var(--font-sans);letter-spacing:0;background:var(--color-orange-soft);color:var(--color-orange-ink);border-radius:9999px;margin-left:auto;padding:1px 8px;font-size:11px;font-weight:600}.nav-item.is-active .nav-count{background:var(--color-orange);color:var(--color-ink)}.tab-count{background:var(--color-orange);color:#fff;min-width:17px;height:17px;font-family:var(--font-sans);letter-spacing:0;border-radius:9999px;place-items:center;padding:0 5px;font-size:10px;font-weight:700;display:grid;position:absolute;top:-4px;left:calc(50% + 6px)}.link{color:var(--color-ink-3);font-size:12px;font-weight:600}.link:hover{color:var(--color-ink)}.btn-danger{background:var(--color-red);color:#fff}.btn-danger:hover{background:var(--color-red-ink)}.btn.is-selected{background:var(--color-ink);border-color:var(--color-ink);color:#fff}.prio{font-family:var(--font-cond);letter-spacing:.04em;border-radius:6px;flex-shrink:0;padding:1px 7px;font-size:13px;font-weight:700}.prio-P0{background:var(--color-red-soft);color:var(--color-red-ink)}.prio-P1{background:var(--color-orange-soft);color:var(--color-orange-ink)}.prio-P2{color:#9a7400;background:#fff7d6}.prio-P3{background:var(--color-bg);color:var(--color-ink-2)}.prio-P4{color:var(--color-ink-3);box-shadow:inset 0 0 0 1px var(--color-line);background:0 0}.prio-picker{grid-template-columns:repeat(5,1fr);gap:6px;display:grid}.prio-option{outline-offset:-2px;border-radius:10px;outline:2px solid #0000;padding:8px 0;font-size:15px;transition:outline-color .15s}.prio-option.is-selected{outline-color:var(--color-ink)}.task-row{border-bottom:1px solid var(--color-line);cursor:pointer;align-items:center;gap:12px;padding:11px 4px;transition:opacity .25s,transform .25s;display:flex}.task-row:last-of-type{border-bottom:0}.task-row.is-leaving{opacity:0;transform:translate(12px)}.task-title{font-weight:500;transition:color .2s}.task-row.is-done .task-title{color:var(--color-ink-3);text-decoration:line-through}.task-meta{color:var(--color-ink-3);align-items:center;gap:8px;min-width:0;margin-top:3px;font-size:12px;display:flex}.late{color:var(--color-red-ink);font-weight:600}.check{border:2px solid #cdd1d8;border-radius:7px;flex-shrink:0;place-items:center;width:22px;height:22px;transition:background .2s,border-color .2s,transform .2s;display:grid}.check:hover{border-color:var(--color-ink-3)}.check svg{width:13px;height:13px;stroke:var(--color-ink);stroke-width:3.2px;fill:none;stroke-dasharray:20;stroke-dashoffset:20px;transition:stroke-dashoffset .3s 50ms}.is-done .check{background:var(--color-green);border-color:var(--color-green);transform:scale(1.08)}.is-done .check svg{stroke-dashoffset:0}.progress-line{background:var(--color-track);border-radius:4px;height:4px;margin-top:14px;overflow:hidden}.progress-line i{background:var(--color-orange);border-radius:4px;height:100%;transition:width .4s;display:block}.segmented{background:var(--color-card);border:1px solid var(--color-line);scrollbar-width:none;border-radius:14px;gap:4px;padding:4px;display:flex;overflow-x:auto}.segment{white-space:nowrap;font-family:var(--font-cond);letter-spacing:.05em;text-transform:uppercase;color:var(--color-ink-2);border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:15px;font-weight:600;transition:background .15s,color .15s;display:flex}.segment:hover{background:var(--color-bg)}.segment.is-active{background:var(--color-ink);color:#fff}.segment-count{font-family:var(--font-sans);letter-spacing:0;background:var(--color-bg);color:var(--color-ink-2);border-radius:9999px;padding:0 7px;font-size:11px;font-weight:600}.segment.is-active .segment-count{color:#fff;background:#ffffff26}.quickadd{background:var(--color-card);border:1px solid var(--color-line);border-radius:14px;align-items:center;gap:10px;padding:6px 6px 6px 14px;transition:border-color .15s,box-shadow .15s;display:flex}.quickadd:focus-within{border-color:var(--color-ink);box-shadow:0 0 0 4px #0b0d100f}.quickadd input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0;flex:1;padding:6px 0;font-size:14px}.quickadd input::placeholder{color:var(--color-ink-3)}.chip{background:var(--color-blue-soft);color:var(--color-blue-ink);white-space:nowrap;border-radius:8px;align-items:center;gap:4px;padding:2px 8px;font-size:12px;font-weight:600;display:inline-flex}.kbd{border:1px solid var(--color-line);background:var(--color-card);border-radius:6px;padding:0 5px;font-size:11px;font-weight:600}.modal-backdrop{z-index:50;background:#0b0d1066;position:fixed;inset:0}.modal{z-index:51;background:var(--color-card);max-height:92dvh;padding:20px 18px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;position:fixed;bottom:0;left:0;right:0;overflow-y:auto}@media (min-width:768px){.modal{border-radius:20px;width:min(560px,100vw - 48px);max-height:calc(100dvh - 48px);padding:24px;inset:50% auto auto 50%;transform:translate(-50%,-50%);box-shadow:0 24px 60px #0b0d1033}}.toast-action{color:var(--color-green);text-underline-offset:2px;margin-left:6px;font-weight:700;text-decoration:underline}.habit-tile{background:var(--color-bg);text-align:left;outline-offset:-2px;border-radius:16px;outline:2px solid #0000;flex-direction:column;align-items:flex-start;gap:10px;padding:14px;transition:transform .15s,outline-color .15s,background .15s;display:flex;position:relative}.habit-tile:hover{transform:translateY(-2px)}.habit-tile.is-selected{outline-color:var(--color-ink);background:var(--color-card)}.habit-name{font-family:var(--font-cond);letter-spacing:.05em;text-transform:uppercase;align-items:center;gap:6px;font-size:17px;font-weight:700;line-height:1;display:flex}.bonus{font-family:var(--font-sans);letter-spacing:0;background:var(--color-green-soft);color:var(--color-green-ink);border-radius:9999px;padding:0 6px;font-size:11px;font-weight:700}.habit-metric{font-family:var(--font-cond);white-space:nowrap;font-size:24px;font-weight:700;line-height:1}.habit-metric small{color:var(--color-ink-3);letter-spacing:.06em;text-transform:uppercase;margin-left:3px;font-size:12px;font-weight:600}.habit-sub{color:var(--color-ink-3);font-size:12px}.ring-count{font-family:var(--font-cond);font-size:18px;font-weight:800;line-height:1}.plus{background:var(--color-card);border:1px solid var(--color-line);border-radius:9999px;place-items:center;width:28px;height:28px;font-size:17px;font-weight:500;transition:background .15s,color .15s,transform .15s,border-color .15s;display:grid;position:absolute;top:10px;right:10px}.plus:hover{background:var(--color-ink);border-color:var(--color-ink);color:var(--color-green);transform:rotate(90deg)}.day-marks{justify-content:center;gap:3px;height:6px;margin-top:6px;display:flex}.day-marks i{width:6px;height:6px;box-shadow:0 0 0 1px var(--color-card);border-radius:9999px}.private-note{color:var(--color-ink-3);align-items:center;gap:6px;margin-top:12px;font-size:12px;display:flex}.private-note button{color:var(--color-ink-2);text-underline-offset:2px;font-weight:600;text-decoration:underline}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr));gap:10px;display:grid}.stat{background:var(--color-bg);border-radius:14px;padding:12px 14px}.stat-value{font-family:var(--font-cond);white-space:nowrap;font-size:28px;font-weight:800;line-height:1}.stat-value small{color:var(--color-ink-3);letter-spacing:.04em;margin-left:3px;font-size:13px;font-weight:600}.stat-label{color:var(--color-ink-3);margin-top:4px;font-size:12px}.chart-readout{color:var(--color-ink-2);min-height:18px;margin-bottom:10px;font-size:12px}.chart-plot{border-bottom:1px solid var(--color-line);align-items:flex-end;gap:2px;height:150px;display:flex;position:relative}.chart-col{border-radius:4px 4px 0 0;outline:none;flex:1 1 0;justify-content:center;align-items:flex-end;min-width:0;height:100%;display:flex}.chart-col:hover,.chart-col:focus-visible{background:#0b0d100a}.chart-bar{border-radius:4px 4px 0 0;width:100%;max-width:24px;transition:height .5s cubic-bezier(.2,.8,.2,1)}.chart-target{border-top:1px dashed var(--color-ink-3);pointer-events:none;z-index:1;position:absolute;left:0;right:0}.chart-target span{color:var(--color-ink-3);background:var(--color-card);border-radius:4px;padding:0 4px;font-size:11px;position:absolute;bottom:3px;right:0}.chart-axis{gap:2px;margin-top:6px;display:flex}.chart-axis span{text-align:center;min-width:0;font-family:var(--font-cond);letter-spacing:.06em;color:var(--color-ink-3);white-space:nowrap;flex:1 1 0;font-size:11px;font-weight:600}.chart-axis span.is-current{color:var(--color-ink)}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table th{text-align:left;color:var(--color-ink-3);border-bottom:1px solid var(--color-line);padding:6px 4px;font-weight:600}.data-table td{border-bottom:1px solid var(--color-line);font-variant-numeric:tabular-nums;padding:7px 4px}.data-table td:last-child,.data-table th:last-child{text-align:right}.code-field{background:var(--color-bg);text-overflow:ellipsis;white-space:nowrap;border-radius:10px;flex:1;min-width:0;padding:9px 12px;font-size:12.5px;display:block;overflow:hidden}.notice-warn{background:var(--color-orange-soft);color:var(--color-orange-ink);border-radius:12px;padding:10px 14px;font-size:13px}.notice-warn code{background:#fff9;border-radius:4px;padding:0 4px}.import-table thead th{background:var(--color-card);position:sticky;top:0}.icon-btn{border:1px solid var(--color-line);background:var(--color-card);border-radius:10px;place-items:center;width:34px;height:34px;transition:border-color .15s;display:grid}.icon-btn:hover{border-color:var(--color-ink-3)}.icon-btn[aria-disabled=true]{opacity:.35;pointer-events:none}.input-suffix{position:relative}.input-suffix>span{color:var(--color-ink-3);pointer-events:none;font-size:13px;font-weight:600;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.input-lg{font-family:var(--font-cond);padding-top:6px;padding-bottom:6px;font-weight:700;font-size:28px!important}.choice-row{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;display:grid}.choice{background:var(--color-bg);font-family:var(--font-cond);letter-spacing:.04em;text-transform:uppercase;outline-offset:-2px;border-radius:12px;outline:2px solid #0000;padding:12px;font-size:18px;font-weight:700;transition:outline-color .15s,background .15s}.choice.is-selected{outline-color:var(--color-ink);background:var(--color-card)}.swatch{outline-offset:2px;border-radius:9999px;outline:2px solid #0000;width:28px;height:28px;transition:outline-color .15s}.swatch.is-selected{outline-color:var(--color-ink)}.switch{appearance:none;background:var(--color-line);cursor:pointer;border-radius:9999px;flex-shrink:0;width:38px;height:22px;transition:background .2s;position:relative}.switch:after{content:"";background:#fff;border-radius:9999px;width:16px;height:16px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch:checked{background:var(--color-ink)}.switch:checked:after{transform:translate(16px)}.project-card{flex-direction:column;gap:12px;transition:transform .15s,border-color .15s;display:flex}.project-card:hover{border-color:var(--color-ink-3);transform:translateY(-2px)}.project-title{font-size:16px;font-weight:600;line-height:1.3}.health{white-space:nowrap;border-radius:9999px;align-items:center;gap:6px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-flex}.health:before{content:"";background:currentColor;border-radius:9999px;width:7px;height:7px}.health-red{background:var(--color-red-soft);color:var(--color-red-ink)}.health-orange{background:var(--color-orange-soft);color:var(--color-orange-ink)}.health-green{background:var(--color-green-soft);color:var(--color-green-ink)}.health-none{background:var(--color-bg);color:var(--color-ink-3)}.countdown{font-family:var(--font-cond);letter-spacing:.04em;white-space:nowrap;background:var(--color-blue-soft);color:var(--color-blue-ink);border-radius:6px;padding:1px 7px;font-size:13px;font-weight:700}.countdown.is-late{background:var(--color-red-soft);color:var(--color-red-ink)}.countdown.is-soon{background:var(--color-orange-soft);color:var(--color-orange-ink)}.countdown.is-done{background:var(--color-green-soft);color:var(--color-green-ink)}.hot-banner{border-radius:16px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.hot-banner.is-risk{background:var(--color-red-soft)}.hot-banner.is-attention{background:var(--color-orange-soft)}.hot-level{font-family:var(--font-cond);letter-spacing:.1em;text-transform:uppercase;font-size:12px;font-weight:700}.is-risk .hot-level{color:var(--color-red-ink)}.is-attention .hot-level{color:var(--color-orange-ink)}.path-chip{background:var(--color-bg);max-width:100%;color:var(--color-ink-2);border-radius:10px;align-items:center;gap:8px;padding:6px 6px 6px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:inline-flex}.path-chip span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.path-chip .btn{font-family:var(--font-sans)}.news-row{border-bottom:1px solid var(--color-line);gap:12px;padding:9px 0;font-size:13px;display:flex}.news-row:last-child{border-bottom:0}.news-date{width:54px;color:var(--color-ink-3);flex-shrink:0;padding-top:1px;font-size:12px}.news-row.is-auto .news-text{color:var(--color-ink-2)}.meter{background:var(--color-blue-soft);border-radius:9999px;height:8px;overflow:hidden}.meter>i{background:var(--color-blue-mark);border-radius:9999px;height:100%;transition:width .6s cubic-bezier(.2,.8,.2,1);display:block}.meter.is-warn{background:var(--color-orange-soft)}.meter.is-warn>i{background:var(--color-orange-mark)}.meter.is-over{background:var(--color-red-soft)}.meter.is-over>i{background:var(--color-red-mark)}.money{font-family:var(--font-cond);white-space:nowrap;font-size:26px;font-weight:800;line-height:1}.money-sub{color:var(--color-ink-3);white-space:nowrap;margin-top:3px;font-size:12px}.budget-row{border-bottom:1px solid var(--color-line);grid-template-columns:128px minmax(0,1fr) 130px 200px 96px 34px;align-items:center;gap:12px;padding:11px 4px;font-size:13px;display:grid}.budget-row:last-child{border-bottom:0}.budget-row.is-head{color:var(--color-ink-3);padding-top:0;font-size:12px;font-weight:600}.doc-type{font-family:var(--font-cond);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;width:fit-content;padding:2px 7px;font-size:12px;font-weight:700}.doc-type-market{background:var(--color-violet-soft);color:var(--color-violet-ink)}.doc-type-order{background:var(--color-blue-soft);color:var(--color-blue-ink)}.doc-type-invoice{background:var(--color-green-soft);color:var(--color-green-ink)}.status-select{border:1px solid var(--color-line);background:var(--color-card);width:100%;color:var(--color-ink);cursor:pointer;border-radius:9px;padding:6px 8px;font-size:12.5px;font-weight:600}.status-select.is-final{background:var(--color-green-soft);color:var(--color-green-ink);border-color:#0000}.stale{color:var(--color-red-ink);font-weight:600}@media (max-width:1023px){.budget-row{grid-template-columns:minmax(0,1fr) auto;row-gap:8px}.budget-row.is-head{display:none}.budget-row{position:relative}.budget-row>.col-type{grid-column:1/-1;padding-right:40px}.budget-row>.col-edit{position:absolute;top:6px;right:0}.budget-row>.col-status{grid-column:1}}.timeline{height:40px;margin:6px 8px 0;position:relative}.timeline-track{background:var(--color-line);height:2px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.timeline-today{background:var(--color-ink);border-radius:2px;width:2px;position:absolute;top:2px;bottom:2px;transform:translate(-50%)}.timeline-point{width:12px;height:12px;box-shadow:0 0 0 2px var(--color-card);background:var(--color-blue-mark);cursor:default;border-radius:9999px;position:absolute;top:50%;transform:translate(-50%,-50%)}.timeline-point.is-done{background:var(--color-green-mark)}.timeline-point.is-late{background:var(--color-red-mark)}.timeline-point.is-soon{background:var(--color-orange-mark)}.timeline-axis{color:var(--color-ink-3);justify-content:space-between;margin:2px 8px 0;font-size:11px;display:flex}.sheet-backdrop{z-index:40;background:#0b0d1059;position:fixed;inset:0}.sheet{z-index:41;background:var(--color-card);padding:10px 16px calc(20px + env(safe-area-inset-bottom));border-radius:22px 22px 0 0;position:fixed;bottom:0;left:0;right:0}.sheet-grip{background:var(--color-line);border-radius:4px;width:40px;height:4px;margin:0 auto 14px}.nav-count.is-alert{background:var(--color-red-soft);color:var(--color-red-ink)}.nav-item.is-active .nav-count.is-alert{background:var(--color-red);color:#fff}.tab-count.is-alert{background:var(--color-red)}.alert-row{gap:12px;padding:12px 0;display:flex}.alert-row+.alert-row{border-top:1px solid var(--color-line)}.alert-icon{border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;display:grid}.alert-row.is-red .alert-icon{background:var(--color-red-soft);color:var(--color-red-ink)}.alert-row.is-orange .alert-icon{background:var(--color-orange-soft);color:var(--color-orange-ink)}.alert-title{font-weight:600;line-height:1.3}.alert-detail{color:var(--color-ink-3);flex-wrap:wrap;align-items:center;gap:6px;margin-top:3px;font-size:12.5px;display:flex}.alert-actions{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.alert-dismiss{width:28px;height:28px;color:var(--color-ink-3);border-radius:8px;flex-shrink:0;place-items:center;font-size:13px;display:grid}.alert-dismiss:hover{background:var(--color-bg);color:var(--color-ink)}.severity-count{font-family:var(--font-cond);letter-spacing:.06em;text-transform:uppercase;border-radius:6px;padding:1px 7px;font-size:13px;font-weight:700}.severity-count.is-red{background:var(--color-red-soft);color:var(--color-red-ink)}.severity-count.is-orange{background:var(--color-orange-soft);color:var(--color-orange-ink)}.search-trigger{background:var(--color-bg);width:100%;color:var(--color-ink-3);border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:500;display:flex}.search-trigger:hover{color:var(--color-ink)}.search-panel{z-index:51;background:var(--color-card);border-radius:18px;flex-direction:column;width:min(640px,100vw - 24px);max-height:calc(100dvh - 24px);display:flex;position:fixed;top:12px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 24px 60px #0b0d1038}@media (min-width:768px){.search-panel{max-height:72vh;top:12vh}}.search-field{border-bottom:1px solid var(--color-line);align-items:center;gap:10px;padding:14px 16px;display:flex}.search-field input{min-width:0;color:var(--color-ink);background:0 0;border:0;outline:0;flex:1;font-size:16px}.search-field input::placeholder{color:var(--color-ink-3)}.search-results{padding:6px 8px 10px;overflow-y:auto}.search-group{padding:10px 10px 4px}.search-item{border-radius:10px;align-items:center;gap:12px;padding:8px 10px;display:flex}.search-item.is-current{background:var(--color-bg)}.search-hint{color:var(--color-ink-3);padding:14px 10px;font-size:13px}.layer-chip{background:var(--color-card);border:1px solid var(--color-line);color:var(--color-ink-3);border-radius:9999px;align-items:center;gap:7px;padding:6px 12px;font-size:13px;font-weight:600;transition:color .15s,border-color .15s;display:inline-flex}.layer-chip .dot{opacity:.35}.layer-chip.is-on{color:var(--color-ink);border-color:var(--color-ink)}.layer-chip.is-on .dot{opacity:1}.choice:has(.dot){justify-content:center;align-items:center;gap:8px;display:inline-flex}.ev-dot-pro{background:var(--color-blue-mark)}.ev-dot-perso{background:var(--color-violet-mark)}.ev-dot-sport{background:var(--color-green-mark)}.ev-dot-other{background:var(--color-neutral-mark)}.meter.is-violet{background:var(--color-violet-soft)}.meter.is-violet>i{background:var(--color-violet-mark)}.pill-violet{background:var(--color-violet-soft);color:var(--color-violet-ink)}.chat-log{flex-direction:column;gap:10px;max-height:46dvh;padding-right:4px;display:flex;overflow-y:auto}.chat-msg{white-space:pre-wrap;border-radius:14px;max-width:92%;padding:10px 14px;font-size:14px;line-height:1.55}.chat-msg.is-user{background:var(--color-ink);color:#fff;align-self:flex-end}.chat-msg.is-assistant{background:var(--color-bg);align-self:flex-start}.chat-msg.is-assistant:empty:after{content:"…";color:var(--color-ink-3)}.budget-row.is-target{background:var(--color-blue-soft);border-radius:10px}}@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-x-0{inset-inline:0}.top-0{top:0}.bottom-0{bottom:0}.z-30{z-index:30}.col-span-2{grid-column:span 2/span 2}.row-2{grid-row:2}.row-3{grid-row:3}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mt-2{margin-top:calc(var(--spacing) * -2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-2\.5{margin-top:calc(var(--spacing) * 2.5)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-7{margin-top:calc(var(--spacing) * 7)}.mt-\[18px\]{margin-top:18px}.mt-auto{margin-top:auto}.\!mb-0{margin-bottom:0!important}.\!mb-1{margin-bottom:var(--spacing)!important}.mb-1{margin-bottom:var(--spacing)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-2\.5{margin-bottom:calc(var(--spacing) * 2.5)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-5{margin-bottom:calc(var(--spacing) * 5)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.mb-\[18px\]{margin-bottom:18px}.-ml-3{margin-left:calc(var(--spacing) * -3)}.ml-1{margin-left:var(--spacing)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.list-item{display:list-item}.table{display:table}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-11{height:calc(var(--spacing) * 11)}.h-\[18px\]{height:18px}.h-\[96px\]{height:96px}.h-\[104px\]{height:104px}.h-\[180px\]{height:180px}.h-dvh{height:100dvh}.max-h-\[420px\]{max-height:420px}.min-h-\[70px\]{min-height:70px}.min-h-\[80px\]{min-height:80px}.min-h-\[90px\]{min-height:90px}.min-h-\[96px\]{min-height:96px}.min-h-\[180px\]{min-height:180px}.min-h-dvh{min-height:100dvh}.\!w-\[150px\]{width:150px!important}.\!w-\[170px\]{width:170px!important}.\!w-auto{width:auto!important}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-11{width:calc(var(--spacing) * 11)}.w-\[18px\]{width:18px}.w-\[58px\]{width:58px}.w-\[92px\]{width:92px}.w-\[96px\]{width:96px}.w-\[104px\]{width:104px}.w-\[180px\]{width:180px}.w-\[232px\]{width:232px}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[260px\]{max-width:260px}.max-w-\[380px\]{max-width:380px}.max-w-\[420px\]{max-width:420px}.max-w-\[560px\]{max-width:560px}.max-w-\[1280px\]{max-width:1280px}.max-w-full{max-width:100%}.min-w-0{min-width:0}.min-w-\[64px\]{min-width:64px}.min-w-\[150px\]{min-width:150px}.min-w-\[160px\]{min-width:160px}.min-w-\[200px\]{min-width:200px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.grow{flex-grow:1}.translate-y-2{--tw-translate-y:calc(var(--spacing) * 2);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-full{--tw-translate-y:100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.cursor-pointer{cursor:pointer}.resize{resize:both}.resize-y{resize:vertical}.scroll-mt-4{scroll-margin-top:calc(var(--spacing) * 4)}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-baseline{align-items:baseline}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.\!gap-1{gap:var(--spacing)!important}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-3\.5{gap:calc(var(--spacing) * 3.5)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-\[18px\]{gap:18px}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-line>:not(:last-child)){border-color:var(--color-line)}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\!border-transparent{border-color:#0000!important}.border-line{border-color:var(--color-line)}.bg-bg{background-color:var(--color-bg)}.bg-blue{background-color:var(--color-blue)}.bg-blue-ink{background-color:var(--color-blue-ink)}.bg-blue-soft{background-color:var(--color-blue-soft)}.bg-card{background-color:var(--color-card)}.bg-cyan{background-color:var(--color-cyan)}.bg-cyan-ink{background-color:var(--color-cyan-ink)}.bg-cyan-soft{background-color:var(--color-cyan-soft)}.bg-green{background-color:var(--color-green)}.bg-green-ink{background-color:var(--color-green-ink)}.bg-green-soft{background-color:var(--color-green-soft)}.bg-ink{background-color:var(--color-ink)}.bg-lime{background-color:var(--color-lime)}.bg-lime-ink{background-color:var(--color-lime-ink)}.bg-lime-soft{background-color:var(--color-lime-soft)}.bg-orange{background-color:var(--color-orange)}.bg-orange-ink{background-color:var(--color-orange-ink)}.bg-orange-soft{background-color:var(--color-orange-soft)}.bg-red{background-color:var(--color-red)}.bg-red-ink{background-color:var(--color-red-ink)}.bg-red-soft{background-color:var(--color-red-soft)}.bg-violet{background-color:var(--color-violet)}.bg-violet-ink{background-color:var(--color-violet-ink)}.bg-violet-soft{background-color:var(--color-violet-soft)}.bg-white{background-color:var(--color-white)}.bg-white\/95{background-color:#fffffff2}@supports (color:color-mix(in lab, red, red)){.bg-white\/95{background-color:color-mix(in oklab, var(--color-white) 95%, transparent)}}.\!p-3{padding:calc(var(--spacing) * 3)!important}.p-4{padding:calc(var(--spacing) * 4)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.\!py-0{padding-block:0!important}.\!py-1{padding-block:var(--spacing)!important}.\!py-2\.5{padding-block:calc(var(--spacing) * 2.5)!important}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-10{padding-block:calc(var(--spacing) * 10)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-28{padding-bottom:calc(var(--spacing) * 28)}.pb-\[calc\(8px\+env\(safe-area-inset-bottom\)\)\]{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.pl-2{padding-left:calc(var(--spacing) * 2)}.pl-5{padding-left:calc(var(--spacing) * 5)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.font-cond{font-family:var(--font-cond)}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.\!text-\[15px\]{font-size:15px!important}.\!text-\[17px\]{font-size:17px!important}.text-\[\.45em\]{font-size:.45em}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[22px\]{font-size:22px}.text-\[26px\]{font-size:26px}.text-\[30px\]{font-size:30px}.text-\[34px\]{font-size:34px}.text-\[38px\]{font-size:38px}.text-\[40px\]{font-size:40px}.text-\[56px\]{font-size:56px}.text-\[72px\]{font-size:72px}.leading-\[\.95\]{--tw-leading:.95;line-height:.95}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.\!font-semibold{--tw-font-weight:var(--font-weight-semibold)!important;font-weight:var(--font-weight-semibold)!important}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-extrabold{--tw-font-weight:var(--font-weight-extrabold);font-weight:var(--font-weight-extrabold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[\.3em\]{--tw-tracking:.3em;letter-spacing:.3em}.tracking-\[\.25em\]{--tw-tracking:.25em;letter-spacing:.25em}.tracking-normal{--tw-tracking:var(--tracking-normal);letter-spacing:var(--tracking-normal)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.\!text-orange-ink{color:var(--color-orange-ink)!important}.\!text-red-ink{color:var(--color-red-ink)!important}.text-blue{color:var(--color-blue)}.text-blue-ink{color:var(--color-blue-ink)}.text-blue-soft{color:var(--color-blue-soft)}.text-cyan{color:var(--color-cyan)}.text-cyan-ink{color:var(--color-cyan-ink)}.text-cyan-soft{color:var(--color-cyan-soft)}.text-green{color:var(--color-green)}.text-green-ink{color:var(--color-green-ink)}.text-green-soft{color:var(--color-green-soft)}.text-ink{color:var(--color-ink)}.text-ink-2{color:var(--color-ink-2)}.text-ink-3{color:var(--color-ink-3)}.text-lime{color:var(--color-lime)}.text-lime-ink{color:var(--color-lime-ink)}.text-lime-soft{color:var(--color-lime-soft)}.text-orange{color:var(--color-orange)}.text-orange-ink{color:var(--color-orange-ink)}.text-orange-soft{color:var(--color-orange-soft)}.text-red{color:var(--color-red)}.text-red-ink{color:var(--color-red-ink)}.text-red-soft{color:var(--color-red-soft)}.text-violet{color:var(--color-violet)}.text-violet-ink{color:var(--color-violet-ink)}.text-violet-soft{color:var(--color-violet-soft)}.lowercase{text-transform:lowercase}.normal-case{text-transform:none}.uppercase{text-transform:uppercase}.line-through{text-decoration-line:line-through}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.accent-ink{accent-color:var(--color-ink)}.opacity-0{opacity:0}.opacity-50{opacity:.5}.ring{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.backdrop-blur{--tw-backdrop-blur:blur(8px);-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}@media (hover:hover){:is(:where(.group):hover .group-hover\:underline){text-decoration-line:underline}}.last\:mb-0:last-child{margin-bottom:0}.last\:border-0:last-child{border-style:var(--tw-border-style);border-width:0}@media (hover:hover){.hover\:\!border-line:hover{border-color:var(--color-line)!important}.hover\:text-ink:hover{color:var(--color-ink)}.hover\:text-red-ink:hover{color:var(--color-red-ink)}.hover\:brightness-\[\.98\]:hover{--tw-brightness:brightness(.98);filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}}.focus\:\!border-ink:focus{border-color:var(--color-ink)!important}@media not all and (min-width:40rem){.max-sm\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}}@media (min-width:40rem){.sm\:col-span-1{grid-column:span 1/span 1}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.sm\:grid-cols-\[1fr_auto\]{grid-template-columns:1fr auto}.sm\:grid-cols-\[140px_1fr\]{grid-template-columns:140px 1fr}.sm\:pt-6{padding-top:calc(var(--spacing) * 6)}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:block{display:block}.md\:flex{display:flex}.md\:hidden{display:none}.md\:inline{display:inline}.md\:h-\[112px\]{height:112px}.md\:h-\[132px\]{height:132px}.md\:\!w-\[min\(680px\,calc\(100vw-48px\)\)\]{width:min(680px,100vw - 48px)!important}.md\:w-\[112px\]{width:112px}.md\:w-\[132px\]{width:132px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.md\:items-center{align-items:center}.md\:items-start{align-items:flex-start}.md\:gap-3\.5{gap:calc(var(--spacing) * 3.5)}.md\:gap-6{gap:calc(var(--spacing) * 6)}.md\:\!p-5{padding:calc(var(--spacing) * 5)!important}.md\:px-9{padding-inline:calc(var(--spacing) * 9)}.md\:pt-7{padding-top:calc(var(--spacing) * 7)}.md\:pb-12{padding-bottom:calc(var(--spacing) * 12)}.md\:text-\[26px\]{font-size:26px}.md\:text-\[44px\]{font-size:44px}.md\:text-\[46px\]{font-size:46px}.md\:text-\[52px\]{font-size:52px}.md\:opacity-0{opacity:0}@media (hover:hover){:is(:where(.group):hover .md\:group-hover\:opacity-100){opacity:1}}}@media (min-width:64rem){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:hidden{display:none}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-\[minmax\(0\,1\.2fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.lg\:grid-cols-\[minmax\(0\,1\.15fr\)_minmax\(0\,1fr\)\]{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr)}.lg\:text-left{text-align:left}}@media (min-width:80rem){.xl\:col-span-1{grid-column:span 1/span 1}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-\[auto_1fr\]{grid-template-columns:auto 1fr}.xl\:gap-9{gap:calc(var(--spacing) * 9)}}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (max-width:767px){.input,.quickadd input{font-size:16px}.habit-tile{text-align:center;align-items:center;gap:6px;padding:12px 8px}.habit-name{justify-content:center;font-size:14px}.habit-metric{font-size:19px}.habit-metric small{margin:2px 0 0;font-size:10px;display:block}.habit-sub{display:none}.plus{width:24px;height:24px;font-size:15px;top:6px;right:6px}}@media (prefers-reduced-motion:reduce){.card{animation:none}.progress-ring-bar{transition:none}}.fc{--fc-border-color:var(--color-line);--fc-page-bg-color:var(--color-card);--fc-neutral-bg-color:var(--color-bg);--fc-today-bg-color:#f0ebffb3}@supports (color:color-mix(in lab, red, red)){.fc{--fc-today-bg-color:color-mix(in srgb, var(--color-violet-soft) 70%, transparent)}}.fc{--fc-now-indicator-color:var(--color-red);--fc-list-event-hover-bg-color:var(--color-bg);--fc-highlight-color:#8b5cff24}@supports (color:color-mix(in lab, red, red)){.fc{--fc-highlight-color:color-mix(in srgb, var(--color-violet) 14%, transparent)}}.fc{--fc-event-text-color:#fff;font-size:13px}.fc .fc-toolbar{flex-wrap:wrap;gap:8px}.fc .fc-toolbar-title{font-family:var(--font-cond);text-transform:uppercase;letter-spacing:.02em;font-size:22px;font-weight:800}.fc .fc-button{background:var(--color-bg);color:var(--color-ink);text-transform:none;box-shadow:none;border:0;border-radius:10px;padding:6px 12px;font-size:13px;font-weight:600}.fc .fc-button:hover{background:var(--color-line);color:var(--color-ink)}.fc .fc-button:focus{box-shadow:none}.fc .fc-button-primary:not(:disabled).fc-button-active,.fc .fc-button-primary:not(:disabled):active{background:var(--color-ink);color:#fff}.fc .fc-button-primary:disabled{background:var(--color-bg);color:var(--color-ink-3);opacity:1}.fc .fc-button-group>.fc-button{border-radius:10px;margin-left:4px}.fc .fc-col-header-cell-cushion,.fc .fc-list-day-text,.fc .fc-list-day-side-text{font-family:var(--font-cond);text-transform:uppercase;letter-spacing:.06em;color:var(--color-ink-2);font-weight:700}.fc .fc-daygrid-day-number,.fc .fc-timegrid-slot-label-cushion,.fc .fc-timegrid-axis-cushion{color:var(--color-ink-3);font-size:12px}.fc .fc-scrollgrid{border-radius:12px;overflow:hidden}.fc .ev{cursor:pointer;border:0;border-radius:6px;padding:1px 3px;font-weight:600}.fc .ev-pro{background:var(--color-blue-mark)}.fc .ev-perso{background:var(--color-violet-mark)}.fc .ev-sport{background:var(--color-green-mark)}.fc .ev-other{background:var(--color-neutral-mark)}.fc .ev-milestone{background:var(--color-blue-soft);--fc-event-text-color:var(--color-blue-ink)}.fc .ev-milestone .fc-event-main{color:var(--color-blue-ink)}.fc .ev-milestone.is-done{opacity:.6}.fc .ev-task{background:var(--color-orange-soft)}.fc .ev-task .fc-event-main{color:var(--color-orange-ink)}.fc .ev-session{background:var(--color-bg);box-shadow:inset 3px 0 0 var(--session-color,var(--color-neutral-mark))}.fc .ev-session .fc-event-main{color:var(--color-ink);padding-left:4px}.fc .ev-color-green{--session-color:var(--color-green-mark)}.fc .ev-color-cyan{--session-color:var(--color-cyan-mark)}.fc .ev-color-lime{--session-color:var(--color-lime-mark)}.fc .ev-color-violet{--session-color:var(--color-violet-mark)}.fc .ev-color-blue{--session-color:var(--color-blue-mark)}.fc .ev-color-orange{--session-color:var(--color-orange-mark)}.fc .ev-color-red{--session-color:var(--color-red-mark)}.fc .fc-list-event.ev{background:0 0}.fc .fc-list-event .fc-list-event-title,.fc .fc-list-event .fc-event-main{color:var(--color-ink)}.fc .fc-list-event-dot{border-color:var(--session-color,var(--dot-color,var(--color-neutral-mark)))}.fc .fc-list-event.ev-pro{--dot-color:var(--color-blue-mark)}.fc .fc-list-event.ev-perso{--dot-color:var(--color-violet-mark)}.fc .fc-list-event.ev-sport{--dot-color:var(--color-green-mark)}.fc .fc-list-event.ev-milestone{--dot-color:var(--color-blue)}.fc .fc-list-event.ev-task{--dot-color:var(--color-orange)}@media (max-width:767px){.fc .fc-toolbar-title{font-size:17px}.fc .fc-header-toolbar{flex-wrap:nowrap}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}