@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-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}}}@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;--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{.visible{visibility:visible}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.blur{--tw-blur:blur(8px);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,)}.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,)}}:root{--paper:#f4efe5;--paper-deep:#e9dfce;--surface:#fbf8f1;--surface-bright:#fffdf8;--ink:#26211c;--ink-soft:#6d645a;--red:#7d2d28;--red-dark:#59201d;--gold:#9a753b;--gold-soft:#d0bc91;--line:#d8cbb5;--line-strong:#bfa97e;--success:#356346;--warning:#8a5a1f;--danger:#9a342f;--shadow:0 24px 55px #392b1d12;--shadow-tight:0 10px 28px #392b1d0f}*{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth}body{background:radial-gradient(circle at 12% 6%, #a67d3d0e, transparent 28rem), radial-gradient(circle at 92% 28%, #7d2d2807, transparent 32rem), linear-gradient(135deg, #fff3, transparent 38%), var(--paper);min-height:100vh;color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,Noto Sans CJK SC,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.song{font-family:Songti SC,STSong,Noto Serif CJK SC,serif}.site-shell{flex-direction:column;min-height:100vh;display:flex}.page-wrap{width:min(1120px,100% - 32px);margin-inline:auto}.site-header{z-index:40;border-bottom:1px solid var(--line-strong);-webkit-backdrop-filter:blur(18px)saturate(.85);backdrop-filter:blur(18px)saturate(.85);background:#f4efe5eb;position:sticky;top:0;box-shadow:0 1px #ffffffa6,0 8px 28px #37281a09}.site-header__inner{justify-content:space-between;align-items:center;gap:24px;min-height:74px;display:flex}.brand{letter-spacing:.1em;align-items:center;gap:15px;font-weight:700;display:inline-flex}.brand-mark{width:34px;height:34px;color:var(--red);border:1px solid var(--gold);outline-offset:4px;outline:1px solid #9a753b2e;place-items:center;display:grid;transform:rotate(45deg)}.brand-mark>span{font-family:Songti SC,serif;transform:rotate(-45deg)}.site-nav{color:var(--ink-soft);align-items:center;gap:8px;font-size:14px;display:flex}.site-nav a{border-radius:2px;padding:8px 12px}.site-nav a:hover{background:var(--paper-deep);color:var(--red)}.hero{text-align:center;isolation:isolate;padding:96px 0 64px;position:relative;overflow:clip}.hero:before{content:"";z-index:-1;opacity:.42;pointer-events:none;background:radial-gradient(circle, transparent 0 24%, #9a753b14 24.4% 24.8%, transparent 25.2% 42%, #9a753b11 42.3% 42.7%, transparent 43.1%), repeating-conic-gradient(from 11.25deg, transparent 0 20deg, #9a753b0e 21deg 22.5deg, transparent 23.5deg 45deg);border-radius:50%;width:360px;height:360px;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)rotate(11.25deg);-webkit-mask-image:radial-gradient(circle,#000 0 56%,#0000 73%);mask-image:radial-gradient(circle,#000 0 56%,#0000 73%)}.hero-eyebrow{color:var(--red);letter-spacing:.35em;margin:0 0 18px;font-size:13px;font-weight:700}.hero h1{letter-spacing:.15em;text-indent:.15em;margin:0;font-size:clamp(38px,6vw,68px);font-weight:550;line-height:1.18}.hero-copy{max-width:650px;color:var(--ink-soft);margin:22px auto 0;font-size:17px}.ornament{color:var(--gold);justify-content:center;align-items:center;gap:14px;margin:30px auto 0;display:flex}.ornament:before,.ornament:after{content:"";background:var(--gold-soft);width:78px;height:1px}.ornament span{border:1px solid;width:9px;height:9px;transform:rotate(45deg)}.portal-section{padding:18px 0 92px}.section-kicker{color:var(--red);letter-spacing:.22em;font-size:13px;font-weight:700}.section-title{letter-spacing:.05em;margin:8px 0 10px;font-size:30px;font-weight:600}.section-copy{color:var(--ink-soft);margin:0}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:30px;display:grid}.portal-card{border:1px solid var(--line);min-height:226px;box-shadow:var(--shadow);background:#fbf8f1f0;border-radius:2px;flex-direction:column;padding:30px;transition:transform .18s,border-color .18s;display:flex;position:relative;overflow:hidden}.portal-card:before{content:"";pointer-events:none;border:1px solid #9a753b1c;position:absolute;inset:8px}.portal-card--public:after{content:"";background:radial-gradient(circle, transparent 0 20%, #a67d3d14 21% 22%, transparent 23% 44%, #a67d3d12 45% 46%, transparent 47%), repeating-conic-gradient(from 22.5deg, transparent 0 17deg, #a67d3d12 18deg 20deg, transparent 21deg 45deg);pointer-events:none;border:1px solid #9a753b12;border-radius:50%;width:158px;height:158px;position:absolute;top:-46px;right:-46px;transform:rotate(11deg)}.portal-card--public>*{z-index:1;position:relative}.portal-card:hover{border-color:var(--line-strong);transform:translateY(-3px);box-shadow:0 28px 62px #392b1d18}.portal-card--closed{box-shadow:var(--shadow-tight);opacity:.84;filter:saturate(.78)}.portal-card h3{margin:20px 0 7px;font-size:24px;font-weight:600}.portal-card p{color:var(--ink-soft);max-width:88%;margin:0}.portal-card__footer{justify-content:space-between;align-items:center;gap:12px;margin-top:auto;padding-top:24px;display:flex}.status{align-items:center;gap:7px;font-size:13px;font-weight:650;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.status--open,.status--approved{color:var(--success)}.status--closed{color:var(--ink-soft)}.status--pending{color:var(--warning)}.status--rejected{color:var(--danger)}.text-link{color:var(--red);font-weight:650}.text-link:hover{color:var(--red-dark)}.site-footer{border-top:1px solid var(--line);color:var(--ink-soft);text-align:center;margin-top:auto;padding:26px 0 36px;font-size:13px}.content-page{padding:42px 0 72px}.page-heading{margin-bottom:28px}.page-heading h1{letter-spacing:.06em;margin:5px 0 8px;font-size:clamp(30px,5vw,42px);font-weight:600}.page-heading p{color:var(--ink-soft);margin:0}.panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:2px;padding:clamp(22px,4vw,38px);position:relative}.panel:before{content:"";background:linear-gradient(90deg, var(--red), var(--gold));width:58px;height:2px;position:absolute;top:0;left:0}.panel+.panel{margin-top:18px}.auth-panel{width:min(520px,100%);margin:0 auto}.form-section{padding:4px 0 26px}.form-section+.form-section{border-top:1px solid var(--line);padding-top:28px}.form-section h2{margin:0 0 18px;font-size:21px;font-weight:600}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.form-fieldset{border:0;min-width:0;margin:0;padding:0}.field{flex-direction:column;gap:7px;display:flex}.field--full{grid-column:1/-1}.field label,.field-label{font-size:14px;font-weight:650}.required{color:var(--red);margin-left:3px}.hint{color:var(--ink-soft);font-size:12px}.field-error{color:var(--danger);font-size:12px;font-weight:650;line-height:1.5}.field--invalid .input,.field--invalid .textarea,.field--invalid .solemn-select__trigger,.field--invalid .solemn-datetime__trigger,.input[aria-invalid=true],.textarea[aria-invalid=true]{border-color:var(--danger);background:snow;box-shadow:0 0 0 2px #9a342f12}.input,.select,.textarea{width:100%;color:var(--ink);background:#fffdf8e6;border:1px solid #c9baa2;border-radius:2px;outline:none;padding:12px 13px;transition:border-color .15s,box-shadow .15s,background .15s}.input:focus,.select:focus,.textarea:focus{border-color:var(--red);background:#fff;box-shadow:0 0 0 3px #7c2e2a14}.solemn-select__trigger{width:100%;min-height:50px;color:var(--ink);text-align:left;cursor:pointer;background:#fffdf8e6;border:1px solid #c9baa2;border-radius:2px;outline:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;transition:border-color .15s,box-shadow .15s,background .15s;display:inline-flex}.solemn-select__trigger[data-placeholder]{color:var(--ink-soft)}.solemn-select__trigger:hover:not([data-disabled]){border-color:var(--line-strong);background:var(--surface-bright)}.solemn-select__trigger:focus-visible,.solemn-select__trigger[data-state=open]{border-color:var(--red);background:#fff;box-shadow:0 0 0 3px #7c2e2a14}.solemn-select__trigger[data-disabled]{opacity:.56;cursor:not-allowed}.solemn-select__trigger[aria-invalid=true]{border-color:var(--danger);background:snow}.solemn-select__icon{width:18px;height:18px;color:var(--gold);flex:none;place-items:center;display:grid}.solemn-select__icon>span,.solemn-select__scroll-icon{border-bottom:1.5px solid;border-right:1.5px solid;width:8px;height:8px;display:block;transform:translateY(-2px)rotate(45deg)}.solemn-select__content{z-index:90;min-width:var(--radix-select-trigger-width);max-width:min(420px,100vw - 24px);max-height:min(360px, var(--radix-select-content-available-height));border:1px solid var(--line-strong);background:var(--surface-bright);color:var(--ink);transform-origin:var(--radix-select-content-transform-origin);border-radius:2px;animation:.14s ease-out solemn-select-open;overflow:hidden;box-shadow:0 18px 42px #392b1d24,0 2px 8px #392b1d14}.solemn-select__viewport{padding:6px}.solemn-select__item{cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:1px;outline:none;align-items:center;min-height:42px;padding:8px 34px 8px 14px;line-height:1.45;display:flex;position:relative}.solemn-select__item[data-highlighted]{color:var(--red-dark);background:#efe5d5}.solemn-select__item[data-state=checked]{color:var(--red-dark);background:#9a753b1f;font-weight:650}.solemn-select__item[data-disabled]{color:#a49a8d;cursor:not-allowed}.solemn-select__indicator{width:14px;height:14px;color:var(--red);place-items:center;display:grid;position:absolute;right:13px}.solemn-select__indicator>span{border-bottom:1.5px solid;border-left:1.5px solid;width:8px;height:4px;display:block;transform:translateY(-1px)rotate(-45deg)}.solemn-select__scroll{width:100%;height:26px;color:var(--gold);cursor:default;background:#f4ecdf;border:0;place-items:center;display:grid}.solemn-select__scroll-icon--up{transform:translateY(2px)rotate(225deg)}@keyframes solemn-select-open{0%{opacity:0;transform:translateY(-3px)scale(.995)}to{opacity:1;transform:translateY(0)scale(1)}}.solemn-datetime__trigger{width:100%;min-height:50px;color:var(--ink);text-align:left;cursor:pointer;background:#fffdf8e6;border:1px solid #c9baa2;border-radius:2px;outline:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;transition:border-color .15s,box-shadow .15s,background .15s;display:inline-flex}.solemn-datetime__trigger[data-empty]{color:var(--ink-soft)}.solemn-datetime__trigger:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-bright)}.solemn-datetime__trigger:focus-visible,.solemn-datetime__trigger[data-state=open]{border-color:var(--red);background:#fff;box-shadow:0 0 0 3px #7c2e2a14}.solemn-datetime__trigger:disabled{opacity:.56;cursor:not-allowed}.solemn-datetime__trigger[data-invalid=true]{border-color:var(--danger);background:snow}.solemn-datetime__calendar-icon{width:18px;height:18px;color:var(--gold);border:1.5px solid;border-radius:2px;flex:none;position:relative}.solemn-datetime__calendar-icon:before{content:"";border-top:1.5px solid;position:absolute;top:4px;left:-1.5px;right:-1.5px}.solemn-datetime__calendar-icon:after{content:"";border-left:1.5px solid;border-right:1.5px solid;height:4px;position:absolute;top:-3px;left:3px;right:3px}.solemn-datetime__content{z-index:95;width:min(620px,100vw - 24px);max-height:min(560px, var(--radix-popover-content-available-height));border:1px solid var(--line-strong);background:var(--surface-bright);color:var(--ink);transform-origin:var(--radix-popover-content-transform-origin);border-radius:2px;outline:none;animation:.14s ease-out solemn-datetime-open;overflow:auto;box-shadow:0 22px 54px #392b1d29,0 3px 10px #392b1d14}.solemn-datetime__body{grid-template-columns:minmax(300px,1fr) 180px;gap:22px;padding:20px;display:grid}.solemn-calendar,.solemn-calendar .rdp-months,.solemn-calendar .rdp-month{width:100%}.solemn-calendar .rdp-month{position:relative}.solemn-calendar .rdp-month_caption{border-bottom:1px solid var(--line);align-items:center;min-height:42px;padding:0 84px 10px 4px;display:flex}.solemn-calendar .rdp-caption_label{letter-spacing:.04em;font-weight:700}.solemn-calendar .rdp-nav{z-index:1;gap:6px;display:flex;position:absolute;top:0;right:0}.solemn-calendar .rdp-button_previous,.solemn-calendar .rdp-button_next{width:36px;height:36px;color:var(--red);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;place-items:center;display:grid}.solemn-calendar .rdp-button_previous:hover,.solemn-calendar .rdp-button_next:hover{border-color:var(--line);background:var(--paper)}.solemn-calendar .rdp-chevron{fill:currentColor;width:16px;height:16px}.solemn-calendar .rdp-month_grid{border-collapse:separate;border-spacing:3px;table-layout:fixed;width:100%;margin-top:8px}.solemn-calendar .rdp-weekday{height:30px;color:var(--ink-soft);text-align:center;font-size:12px;font-weight:600}.solemn-calendar .rdp-day{text-align:center;padding:0}.solemn-calendar .rdp-day_button{width:38px;height:38px;color:var(--ink);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;outline:none;place-items:center;margin:0 auto;display:grid}.solemn-calendar .rdp-day_button:hover{border-color:var(--line-strong);background:var(--paper)}.solemn-calendar .rdp-day_button:focus-visible{border-color:var(--red);box-shadow:0 0 0 2px #7c2e2a1a}.solemn-calendar .rdp-selected .rdp-day_button{border-color:var(--red);background:var(--red);color:#fffaf1;font-weight:700}.solemn-calendar .rdp-today:not(.rdp-selected) .rdp-day_button{border-color:var(--gold);color:var(--red-dark);font-weight:700}.solemn-calendar .rdp-outside .rdp-day_button{color:#a49a8d}.solemn-datetime__time{grid-template-columns:1fr auto 1fr;align-self:start;align-items:end;gap:8px;padding-top:48px;display:grid}.solemn-datetime__time .field{min-width:0}.solemn-datetime__time .field label{color:var(--ink-soft);font-size:12px}.solemn-datetime__time .solemn-select__trigger{min-height:44px;padding:9px 10px}.solemn-datetime__separator{color:var(--gold);padding-bottom:9px;font-weight:700}.solemn-datetime__actions{border-top:1px solid var(--line);background:#f4efe573;align-items:center;gap:10px;padding:14px 20px 18px;display:flex}.solemn-datetime__actions .button{min-height:40px;padding:7px 15px}.solemn-datetime__actions-spacer{flex:1}@keyframes solemn-datetime-open{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.solemn-datetime__content{animation:none}}@media (max-width:640px){body:has(.solemn-datetime__content[data-state=open]):before{content:"";z-index:94;pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#26211c47;position:fixed;inset:0}[data-radix-popper-content-wrapper]:has(>.solemn-datetime__content){z-index:95!important;width:auto!important;min-width:0!important;position:fixed!important;inset:auto 10px 10px!important;transform:none!important}.solemn-datetime__content{width:100%;max-height:calc(100dvh - 20px)}.solemn-datetime__body{grid-template-columns:1fr;gap:8px;padding:16px}.solemn-datetime__time{grid-template-columns:1fr auto 1fr;padding-top:0}.solemn-datetime__actions{padding:12px 16px;position:sticky;bottom:0}.solemn-calendar .rdp-day_button{width:36px;height:36px}}.textarea{resize:vertical;min-height:120px}.radio-row,.check-row{flex-wrap:wrap;gap:12px 24px;padding:8px 0;display:flex}.radio-row label,.check-row label{align-items:center;gap:8px;font-weight:400;display:inline-flex}.actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:24px;display:flex}.button{appearance:none;border:1px solid var(--red);background:var(--red);color:#fffaf1;cursor:pointer;border-radius:2px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 20px;font-weight:700;display:inline-flex}.button:hover{background:var(--red-dark);border-color:var(--red-dark)}.button:disabled{opacity:.55;cursor:not-allowed}.button--secondary{color:var(--red);background:0 0}.button--secondary:hover{color:var(--red-dark);background:#7c2e2a0f}.button--quiet{color:var(--ink-soft);border-color:var(--line);background:0 0}.message{border-left:3px solid var(--gold);color:#654d2e;background:#f5eddd;margin:16px 0;padding:12px 14px}.message--error{border-color:var(--danger);color:#7b2b27;background:#f8e9e6}.message--success{border-color:var(--success);color:#315a3e;background:#eaf2eb}.privacy-note{color:var(--ink-soft);background:var(--paper);border:1px solid var(--line);padding:14px;font-size:13px}.credential-reminder{border:1px solid var(--line);border-left:3px solid var(--gold);color:#654d2e;background:linear-gradient(115deg,#f5eddd,#fbf8f1);margin-top:20px;padding:16px 18px 16px 20px;position:relative}.credential-reminder:after{content:"";border:1px solid #9a753b24;width:34px;height:34px;position:absolute;top:12px;right:14px;transform:rotate(45deg)}.credential-reminder strong{color:var(--red-dark)}.credential-reminder p{margin:5px 0 0;font-size:13px}.credential-reminder--compact{margin:18px 0;font-size:13px}.contact-guidance{grid-template-columns:auto 1fr;align-items:center;gap:22px;display:grid}.contact-guidance__mark{border:1px solid var(--gold);width:58px;height:58px;color:var(--red);place-items:center;font-family:Songti SC,serif;font-size:20px;display:grid;transform:rotate(45deg)}.contact-guidance__mark span{transform:rotate(-45deg)}.contact-guidance h2{margin:0 0 8px}.contact-guidance p{color:var(--ink-soft);margin:0 0 7px}.contact-guidance .button{grid-column:2;justify-self:start}.account-grid{grid-template-columns:240px 1fr;align-items:start;gap:22px;display:grid}.account-workspace__content{min-width:0}.side-nav{padding:0;position:sticky;top:92px;overflow:hidden}.side-nav__heading{border-bottom:1px solid var(--line);background:linear-gradient(145deg,#fffdf8db,#e9dfce7a);padding:20px 18px 16px}.side-nav__heading strong{letter-spacing:.04em;margin-top:5px;font-family:Songti SC,STSong,serif;font-size:17px;font-weight:600;display:block}.side-nav__label{color:var(--red);letter-spacing:.2em;font-size:11px;font-weight:700}.side-nav__links{padding:9px}.side-nav__link{color:var(--ink-soft);border-radius:2px;padding:11px 13px 11px 15px;transition:color .18s,background .18s,transform .18s;display:block;position:relative}.side-nav__link:before{content:"";background:linear-gradient(var(--red), var(--gold));width:2px;height:0;transition:height .18s;position:absolute;top:50%;left:5px;transform:translateY(-50%)}.side-nav__link:hover{color:var(--red-dark);background:#e9dfce85}.side-nav__link:active{transform:translateY(1px)}.side-nav__link.is-current{color:var(--red-dark);background:linear-gradient(90deg,#7d2d2817,#9a753b09);font-weight:700}.side-nav__link.is-current:before{height:22px}.side-nav__link--home{border-top:1px solid var(--line);color:#62584e;margin-top:9px;padding-top:14px}.record-list{gap:12px;display:grid}.record{border:1px solid var(--line);background:var(--surface);justify-content:space-between;gap:16px;padding:16px;display:flex}.record--link{transition:border-color .16s,background .16s,transform .16s}.record--link:hover{border-color:var(--line-strong);background:var(--surface-bright);transform:translateY(-1px)}.admin-shell{background:#f1ede4;grid-template-columns:268px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{color:#eee3d4;background:linear-gradient(#9a753b1f,#0000 22%),radial-gradient(circle at 10% 90%,#7d2d2838,#0000 48%),#2c2723;border-right:1px solid #9a753b61;height:100vh;padding:28px 18px;position:sticky;top:0;box-shadow:12px 0 36px #1e171214}.admin-sidebar .brand{color:#fff7eb;padding:0 8px 24px}.admin-nav{border-top:1px solid #d0bc912e;padding-top:14px}.admin-nav a{color:#d8ccbc;letter-spacing:.025em;border-left:2px solid #0000;border-radius:2px;margin:2px 0;padding:10px 12px;font-size:14px;display:block}.admin-nav a:hover{color:#fff;border-left-color:var(--gold-soft);background:#fff1}.admin-main{min-width:0;padding:36px clamp(24px,3.2vw,48px) 60px}.admin-top{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.admin-top h1{margin:0;font-size:28px}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.metric{border:1px solid var(--line);border-top:2px solid var(--gold);background:var(--surface-bright);box-shadow:var(--shadow-tight);padding:24px}.metric strong{font-family:Georgia,serif;font-size:32px;font-weight:500;display:block}.metric span{color:var(--ink-soft);font-size:13px}.table-wrap{border:1px solid var(--line);background:var(--surface-bright);box-shadow:var(--shadow-tight);overflow-x:auto}.data-table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:14px}.data-table th{text-align:left;color:#5f5346;letter-spacing:.06em;background:#f2eadc;font-size:12px}.data-table th,.data-table td{border-bottom:1px solid #ebe3d6;padding:12px 14px}.empty{text-align:center;color:var(--ink-soft);padding:48px 18px}.admin-top .section-kicker{margin:0 0 6px}.admin-top h1{letter-spacing:.06em;font-weight:550}.admin-top .section-copy{max-width:760px;margin-top:8px}.admin-filter-bar{border:1px solid var(--line);border-top:2px solid var(--gold);box-shadow:var(--shadow-tight);background:#fbf8f1e6;justify-content:space-between;align-items:flex-end;gap:18px;margin-bottom:18px;padding:16px 18px;display:flex}.admin-filter-form,.admin-export-actions{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.admin-filter-form label{min-width:210px;color:var(--ink-soft);letter-spacing:.06em;gap:6px;font-size:12px;font-weight:700;display:grid}.admin-filter-form .select{min-height:44px;color:var(--ink);font-size:14px}.admin-portal-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch}.admin-portal-card{background:linear-gradient(145deg,#fffdf8,#f8f2e8);min-height:0;padding:30px;overflow:visible}.admin-portal-card:after{content:none}.admin-portal-card__heading{gap:16px;margin-bottom:2px;display:grid}.admin-portal-card h2{letter-spacing:.05em;margin:0;font-size:24px;font-weight:600}.admin-portal-card form,.admin-portal-card .form-fieldset{gap:16px;display:grid}.admin-portal-card .actions{margin-top:6px}.admin-section-intro{margin:-4px 0 22px}.portal-config-status{border:1px solid var(--line);border-left:3px solid var(--gold);background:#f4efe59e;grid-template-columns:1fr auto;gap:2px 12px;padding:13px 15px;display:grid}.portal-config-status>span{color:var(--ink-soft);font-size:12px;font-weight:650}.portal-config-status>strong{color:var(--red-dark);grid-area:1/2/3;align-self:center;font-size:14px}.portal-config-status>p{max-width:none;color:var(--ink-soft);margin:0;font-size:13px}.portal-config-status--open{border-left-color:var(--success);background:#edf3ec}.portal-config-status--open>strong{color:var(--success)}.portal-config-status--warning{border-left-color:var(--warning);background:#f7efe1}.portal-config-status--warning>strong{color:var(--warning)}.portal-config-status--closed{border-left-color:var(--danger);background:#f8e9e6}.portal-config-status--closed>strong{color:var(--danger)}.admin-open-check{align-items:center;gap:10px}.admin-open-check input{width:17px;height:17px;accent-color:var(--red)}.admin-portal-card--empty{justify-content:flex-start}.portal-config-empty{border:1px dashed var(--line-strong);background:#f4efe580;flex-direction:column;justify-content:center;align-items:flex-start;min-height:170px;padding:20px;display:flex}.portal-config-empty strong{color:var(--red-dark)}.portal-config-empty p{max-width:none;margin:6px 0 14px;font-size:13px}.admin-details{border:1px solid var(--line);background:#fffdf8bd}.admin-details+.admin-details{margin-top:12px}.admin-details summary{cursor:pointer;border-left:3px solid var(--gold-soft);padding:16px 18px;font-weight:700}.admin-details[open] summary{border-bottom:1px solid var(--line);background:var(--paper)}.admin-details>form{padding:20px}.admin-grid-table{max-width:100%}.data-table--complete{width:max-content;min-width:100%}.data-table--complete th,.data-table--complete td{vertical-align:top;min-width:132px;max-width:280px}.data-table--complete .field-wide{min-width:260px;max-width:380px}.data-table__groups th{z-index:5;text-align:center;color:var(--red-dark);letter-spacing:.11em;border-right:1px solid var(--line);background:#e9dfce;font-family:Songti SC,STSong,serif;font-size:13px;position:sticky;top:0}.data-table--complete thead tr:nth-child(2) th{z-index:4;position:sticky;top:43px}.data-table--complete tbody tr:hover td{background-color:#9a753b0b}.data-table--complete .sticky-action{z-index:7;background:#f5efe4;min-width:112px;position:sticky;right:0;box-shadow:-7px 0 16px #392b1d0e}.data-table--complete tbody .sticky-action{background:#fffdf8}.cell-wrap{white-space:normal;line-height:1.55;display:block}.sensitive-value{white-space:normal;flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.inline-action{color:var(--red);cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:0;font-size:12px}.inline-action:disabled{opacity:.5}.inline-error{color:var(--danger);flex-basis:100%}.password-revealed{color:var(--red-dark);letter-spacing:.14em;font-size:17px}.account-table td{vertical-align:top}.admin-grid-cards{display:none}.admin-record-card{border:1px solid var(--line);border-top:2px solid var(--gold);background:var(--surface-bright);box-shadow:var(--shadow-tight)}.admin-record-card header{border-bottom:1px solid var(--line);background:var(--paper);align-items:center;gap:12px;padding:15px 16px;display:flex}.admin-record-card header strong{margin-right:auto;font-family:Songti SC,serif;font-size:18px}.admin-record-card section{padding:14px 16px}.admin-record-card section+section{border-top:1px solid #e9dfce}.admin-record-card h3{color:var(--red);letter-spacing:.12em;margin:0 0 10px;font-size:13px}.admin-record-card dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;margin:0;display:grid}.admin-record-card dl>div{min-width:0}.admin-record-card dt{color:var(--ink-soft);font-size:12px}.admin-record-card dd{word-break:break-word;margin:3px 0 0}.admin-record-card .card-field--wide{grid-column:1/-1}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#211b168f;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.modal-card{border:1px solid var(--line-strong);border-top:3px solid var(--red);background:var(--surface-bright);width:min(680px,100%);max-height:calc(100vh - 36px);padding:clamp(22px,4vw,38px);overflow:auto;box-shadow:0 34px 90px #16110d47}.modal-card h3{margin:4px 0 22px;font-size:28px;font-weight:550}.notification-preview{border:1px solid var(--line);border-left:3px solid var(--gold);background:var(--paper);margin-top:20px;padding:16px 18px}.notification-preview__label{color:var(--red);letter-spacing:.12em;font-size:12px;font-weight:700}.notification-preview p{margin:8px 0}.notification-preview small{color:var(--ink-soft)}.actions--dialog{justify-content:flex-end;padding-top:6px}.admin-accommodation{border-color:var(--line-strong);background:linear-gradient(135deg,#fffdf8,#f4ecdd)}.admin-accommodation .form-grid{max-width:680px}.admin-correction-panel{margin-top:18px}:focus-visible{outline:2px solid var(--red);outline-offset:3px}@media (max-width:820px){html{scroll-behavior:auto}.site-nav a:not(.nav-primary){display:none}.portal-grid,.form-grid,.account-grid,.metric-grid{grid-template-columns:1fr}.side-nav{display:block;position:static;overflow:hidden}.side-nav__heading{display:none}.side-nav__links{scrollbar-width:thin;gap:4px;padding:8px;display:flex;overflow-x:auto}.side-nav__link{white-space:nowrap;flex:none}.side-nav__link--home{border-top:0;border-left:1px solid var(--line);margin-top:0;padding-top:11px}.admin-shell{grid-template-columns:minmax(0,1fr)}.admin-sidebar{height:auto;position:static}.admin-nav{display:flex;overflow-x:auto}.admin-nav a{white-space:nowrap}.admin-main{padding:24px 14px 48px}.admin-filter-bar{flex-direction:column;align-items:stretch}.admin-filter-form,.admin-export-actions{width:100%}.admin-filter-form label{flex:1;min-width:160px}.admin-portal-grid{grid-template-columns:1fr}.admin-grid-table{display:none}.admin-grid-cards{gap:14px;display:grid}}@media (max-width:520px){.page-wrap{width:min(100% - 22px,1120px)}.site-header__inner{min-height:60px}.brand{font-size:14px}.brand-mark{width:28px;height:28px}.hero{padding:52px 0 34px}.hero h1{letter-spacing:.06em}.portal-card{min-height:190px;padding:22px}.panel{padding:20px 16px}.actions .button{flex:1}.admin-record-card dl{grid-template-columns:1fr}.admin-record-card .card-field--wide{grid-column:auto}.actions--dialog{flex-direction:column-reverse}.actions--dialog .button{width:100%}.contact-guidance{grid-template-columns:1fr}.contact-guidance__mark{margin-left:8px}.contact-guidance .button{grid-column:1}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}@property --tw-border-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}
