/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:-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-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@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;-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}}@layer components;@layer utilities{.static{position:static}.p-1{padding:var(--spacing)}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--canvas:oklch(97.5% .003 255);--surface:oklch(99.5% .001 255);--surface-muted:oklch(95.5% .004 255);--text:oklch(22% .012 255);--text-muted:oklch(46% .012 255);--border:oklch(84% .008 255);--border-strong:oklch(67% .012 255);--accent:oklch(52% .17 255);--accent-dark:oklch(42% .15 255);--accent-soft:oklch(94% .025 255);--success:oklch(43% .11 150);--danger:oklch(48% .17 28);--radius:.375rem;font-synthesis:none;background:var(--canvas);color:var(--text);font-family:PingFang SC,Microsoft YaHei,Noto Sans CJK SC,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:20rem;min-height:100%}body{background:var(--canvas);min-width:20rem;min-height:100vh;color:var(--text);margin:0;font-size:1rem;line-height:1.4;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}button:not(:disabled),a{cursor:pointer}button:disabled{cursor:not-allowed}::selection{color:var(--surface);background:var(--accent)}:focus-visible{outline:.1875rem solid var(--accent);outline-offset:.125rem}.site-shell{min-height:100vh}.skip-link{z-index:100;min-height:2.75rem;color:var(--surface);background:var(--text);padding:.7rem .875rem;font-size:.8125rem;font-weight:700;text-decoration:none;position:fixed;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.app-main{min-width:0;display:block}.record-section{width:min(100% - 1rem,56rem);margin-inline:auto;padding-block:.75rem 1.25rem}.record-header{justify-content:space-between;align-items:baseline;gap:.75rem;padding:0 0 .5rem;display:flex}.record-header h1{letter-spacing:-.015em;min-width:0;margin:0;font-size:1.375rem;font-weight:700;line-height:1.25}.button{border-radius:var(--radius);border:1px solid #0000;justify-content:center;align-items:center;gap:.375rem;min-height:2.75rem;padding:.625rem .875rem;font-size:.8125rem;font-weight:700;display:inline-flex}.button svg{flex:none;width:1rem;height:1rem}.button:disabled{opacity:.5}.button--dark{color:var(--surface);border-color:var(--accent-dark);background:var(--accent-dark)}.button--dark:not(:disabled):hover{border-color:var(--accent);background:var(--accent)}.promise-list{min-width:0;scroll-margin-top:.5rem}.year-group+.year-group{border-top:1px solid var(--border);margin-top:.75rem;padding-top:.625rem}.year-heading{color:var(--text-muted);letter-spacing:.08em;margin:0 0 .375rem;font-size:.8125rem;font-weight:700;line-height:1.25}.promise-rows{border-top:1px solid var(--border-strong)}.promise-row{border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.5rem;min-height:3.5rem;padding:.5rem 0;display:grid}.promise-row__main{min-width:0}.promise-row__statement{color:var(--text);letter-spacing:0;overflow-wrap:anywhere;text-wrap:pretty;margin:0;font-size:1rem;font-weight:600;line-height:1.35}.promise-row__meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.125rem .75rem;margin-top:.125rem;font-size:.8125rem;line-height:1.3;display:flex}.promise-row__meta span,.promise-row__meta time{align-items:center;gap:.25rem;display:inline-flex}.promise-row__status{flex-direction:column;align-items:flex-end;gap:.25rem;padding-top:.0625rem;display:flex}.status-badge{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-muted);letter-spacing:.025em;white-space:nowrap;align-items:center;gap:.25rem;width:fit-content;min-height:1.5rem;padding:.2rem .375rem;font-size:.625rem;font-weight:700;line-height:1.1;display:inline-flex}.status-badge svg{flex:none;width:.75rem;height:.75rem}.status-badge--outstanding{color:var(--accent-dark)}.status-badge--kept{color:var(--success)}.status-badge--broken{color:var(--danger)}.past-due{color:var(--danger);white-space:nowrap;font-size:.625rem;font-weight:700}.promise-note{color:var(--text-muted);white-space:pre-wrap;overflow-wrap:anywhere;margin:.25rem 0 0;font-size:.8125rem;line-height:1.35}.source-link,.source-label{color:var(--accent-dark);margin:.25rem 0 0;font-size:.8125rem;font-weight:600}.source-link{text-underline-offset:.1875rem;align-items:center;gap:.25rem;min-height:2.75rem;padding-block:.125rem;display:inline-flex}.source-link:hover{color:var(--text)}.source-link svg{flex:none;width:.8125rem;height:.8125rem}.loading-state{border-top:1px solid var(--border-strong)}.loading-state__label{min-height:2.75rem;color:var(--text-muted);align-items:center;gap:.5rem;font-size:.8125rem;font-weight:600;display:flex}.loading-state__label svg{flex:none;width:1rem;height:1rem}.promise-skeleton{border-bottom:1px solid var(--border);align-content:center;gap:.375rem;min-height:3.5rem;padding:.5rem 0;display:grid}.promise-skeleton span{border-radius:var(--radius);background:var(--surface-muted);height:.5rem}.promise-skeleton span:first-child{width:5rem}.promise-skeleton span:nth-child(2){width:min(100%,34rem);height:.75rem}.promise-skeleton span:last-child{width:9rem}.state-panel{border:1px solid var(--border-strong);background:var(--surface);grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.75rem;padding:1rem;display:grid}.state-panel>svg{width:1.25rem;height:1.25rem;color:var(--accent-dark)}.state-panel h2{margin:0;font-size:1rem;font-weight:700;line-height:1.3}.state-panel p{max-width:42rem;color:var(--text-muted);margin:.25rem 0 0;font-size:.875rem;line-height:1.4}.state-panel .button{margin-top:.5rem}.state-panel--error>svg{color:var(--danger)}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=30rem){.record-header{flex-direction:column;align-items:flex-start;gap:.125rem}.promise-row{grid-template-columns:minmax(0,1fr)}.promise-row__status{flex-direction:row;align-items:flex-start}}@media (width>=40rem){.record-section{width:min(100% - 2rem,56rem)}.promise-row{gap:1.25rem;padding-inline:.25rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{animation-duration:.01ms;animation-iteration-count:1}}
