/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, 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{box-sizing:border-box;border:0 solid;margin:0;padding:0}::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,ui-sans-serif, system-ui, 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{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]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance: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{.start{inset-inline-start:var(--spacing)}.table{display:table}}:root{--paper:#f5f2ea;--surface:#fffdf8;--ink:#223548;--muted:#697783;--navy:#203b56;--orange:#dc6b3c;--teal:#557d78;--line:#d9ddd8;--soft-blue:#e9f0f4}*{box-sizing:border-box}body{background:radial-gradient(circle at 10% 8%, #dc6b3c1f, transparent 22rem), var(--paper);color:var(--ink);margin:0;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}button,input,textarea,select{font:inherit}:is(button:focus-visible,input:focus-visible){outline-offset:3px;outline:3px solid #dc6b3c73}:is(textarea:focus-visible,select:focus-visible){outline-offset:2px;outline:3px solid #dc6b3c59}.site-shell{width:min(100% - 32px,760px);margin:0 auto;padding:28px 0 72px}.topbar{align-items:center;gap:12px;display:flex}.brand-mark{color:#fff;background:var(--navy);border-radius:14px 14px 14px 4px;place-items:center;width:42px;height:42px;font-weight:800;display:grid}.eyebrow,.kicker{color:var(--orange);letter-spacing:.14em;margin:0;font-size:.72rem;font-weight:800}.brand-name{margin:2px 0 0;font-weight:750}.save-status{color:var(--teal);margin-left:auto;font-size:.78rem}.hero{padding:72px 0 36px}.hero h1{letter-spacing:-.045em;max-width:620px;margin:12px 0 14px;font-family:Songti SC,STSong,serif;font-size:clamp(2.5rem,8vw,4.8rem);line-height:1.03}.hero p:last-child{max-width:570px;color:var(--muted);margin:0;font-size:1.02rem;line-height:1.8}.day-nav{grid-template-columns:repeat(7,1fr);gap:8px;margin-bottom:18px;display:grid}.day-pill{border:1px solid var(--line);min-height:54px;color:var(--muted);cursor:pointer;background:#ffffff80;border-radius:14px}.day-pill span{letter-spacing:.1em;font-size:.58rem;display:block}.day-pill.is-active{border-color:var(--navy);background:var(--navy);color:#fff;box-shadow:0 10px 30px #203b562e}.question-card{background:var(--surface);border:1px solid #203b561a;border-radius:26px;overflow:hidden;box-shadow:0 24px 80px #203b5617}.section-heading{background:var(--soft-blue);align-items:center;gap:14px;padding:22px 24px;display:flex}.section-number{color:var(--orange);font-size:1.65rem;font-weight:800}.section-heading h2{margin:2px 0 0;font-family:Songti SC,STSong,serif;font-size:1.45rem}.section-progress{color:var(--muted);margin-left:auto;font-size:.78rem}.scale-question{border:0;margin:0;padding:34px 24px 28px}.scale-question legend{max-width:620px;padding:0;font-size:1.08rem;font-weight:720;line-height:1.65}.scale-labels{color:var(--muted);justify-content:space-between;margin-top:26px;font-size:.75rem;display:flex}.scale-options{grid-template-columns:repeat(5,1fr);gap:10px;margin-top:10px;display:grid}.scale-options label{cursor:pointer}.scale-options input{opacity:0;position:absolute}.scale-options span{border:1px solid var(--line);background:#fff;border-radius:14px;place-items:center;min-height:52px;font-weight:750;transition:all .18s;display:grid}.scale-options input:checked+span{border-color:var(--orange);background:var(--orange);color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #dc6b3c33}.scale-options input:focus-visible+span{outline-offset:2px;outline:3px solid #dc6b3c59}.card-actions{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:18px 24px 22px;display:flex}.card-actions p{color:var(--muted);margin:0;font-size:.78rem}.primary-button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:14px;min-height:46px;padding:0 24px;font-weight:750}.primary-button:disabled{cursor:not-allowed;opacity:.38}.primary-button.large{min-height:56px;padding:0 30px;font-size:1rem}.secondary-button{border:1px solid var(--navy);min-height:46px;color:var(--navy);cursor:pointer;background:0 0;border-radius:14px;padding:0 22px;font-weight:750}.text-button{min-height:44px;color:var(--muted);cursor:pointer;text-underline-offset:4px;background:0 0;border:0;padding:0 6px;text-decoration:underline}.text-button.danger{color:#a14535}.loading-screen{min-height:100vh;color:var(--muted);place-items:center;display:grid}.welcome-shell{grid-template-columns:minmax(240px,.72fr) minmax(520px,1.28fr);min-height:100vh;display:grid}.welcome-brand{background:var(--navy);color:#fff;align-items:flex-start;gap:16px;min-height:100vh;padding:38px;display:flex}.welcome-brand span{background:var(--orange);border-radius:17px 17px 17px 5px;place-items:center;width:52px;height:52px;font-size:1.5rem;font-weight:800;display:grid}.welcome-brand p{letter-spacing:.16em;margin:17px 0 0;font-size:.72rem;font-weight:800}.welcome-copy{align-self:center;width:min(100% - 64px,760px);padding:72px 0 84px 9vw}.welcome-copy h1{letter-spacing:-.055em;max-width:720px;margin:12px 0 24px;font-family:Songti SC,STSong,serif;font-size:clamp(3rem,6vw,6.6rem);line-height:1.04}.welcome-lead{max-width:680px;color:var(--muted);font-size:1.04rem;line-height:1.8}.notice-grid{grid-template-columns:repeat(3,1fr);gap:10px;max-width:680px;margin:36px 0;display:grid}.notice-grid article{border:1px solid var(--line);background:#ffffff80;border-radius:18px;min-height:112px;padding:20px}.notice-grid strong,.notice-grid span{display:block}.notice-grid strong{margin-bottom:12px;font-family:Songti SC,STSong,serif;font-size:1.22rem}.notice-grid span{color:var(--muted);font-size:.78rem;line-height:1.5}.consent-line{cursor:pointer;align-items:flex-start;gap:12px;max-width:680px;margin:0 0 24px;display:flex}.consent-line input{width:20px;height:20px;accent-color:var(--orange);margin-top:1px}.consent-line span{line-height:1.55}.hero.compact{padding:58px 0 28px}.hero.compact h1{font-size:clamp(2.5rem,7vw,4.6rem)}.setup-shell{max-width:760px}.form-card{overflow:visible}.field-block{border-bottom:1px solid var(--line);padding:28px 24px}.field-block h3{margin:0 0 16px;font-size:1.02rem;line-height:1.6}.field-hint{color:var(--muted);margin:-10px 0 16px;font-size:.78rem}.text-input,.text-area,.select-input{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:14px}.text-input,.select-input{min-height:50px;padding:0 14px}.text-area{resize:vertical;min-height:106px;padding:14px;line-height:1.6}.text-area.small{min-height:78px}.text-area.follow-up{margin-top:14px}.day-selector{grid-template-columns:repeat(7,1fr);gap:8px;display:grid}.linked-entry{border:1px solid var(--line);background:var(--soft-blue);border-radius:16px;align-items:center;gap:12px;padding:18px;display:flex}.linked-entry strong{font-size:1.08rem}.linked-entry span{color:var(--navy);margin-left:auto;font-weight:750}.day-button{border:1px solid var(--line);min-height:62px;color:var(--muted);cursor:pointer;background:#fff;border-radius:14px;position:relative}.day-button span{letter-spacing:.08em;font-size:.56rem;display:block}.day-button i{color:var(--teal);font-size:.56rem;font-style:normal;position:absolute;bottom:3px;right:4px}.day-button.is-active{border-color:var(--navy);background:var(--navy);color:#fff;box-shadow:0 8px 20px #203b5629}.error-banner{color:#8d382b;background:#fff0ec;border:1px solid #b8412f47;border-radius:13px;margin:18px 24px;padding:14px 16px;font-size:.86rem;line-height:1.55}.sticky-error{margin:0 0 16px}.section-tabs{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:12px;display:grid}.section-tabs span{border:1px solid var(--line);min-height:46px;color:var(--muted);background:#ffffff7a;border-radius:14px;justify-content:center;align-items:center;gap:8px;font-size:.78rem;display:flex}.section-tabs i{background:var(--line);border-radius:50%;place-items:center;width:22px;height:22px;font-style:normal;display:grid}.section-tabs .is-active{border-color:var(--navy);color:var(--navy);font-weight:750}.section-tabs .is-active i{background:var(--navy);color:#fff}.section-tabs .is-done i{background:var(--teal);color:#fff}.progress-track{background:var(--line);border-radius:9px;height:3px;margin:-3px 8px 18px;overflow:hidden}.progress-track span{border-radius:inherit;background:var(--orange);height:100%;transition:width .22s;display:block}.scale-list .scale-question,.task-form .scale-question{border-bottom:1px solid var(--line)}.question-index{background:var(--soft-blue);width:28px;height:28px;color:var(--orange);vertical-align:middle;border-radius:9px;place-items:center;margin-right:10px;font-size:.72rem;font-weight:800;display:inline-grid}.choice-grid{flex-wrap:wrap;gap:9px;display:flex}.choice-chip{cursor:pointer}.choice-chip input{opacity:0;pointer-events:none;position:absolute}.choice-chip span{border:1px solid var(--line);min-height:44px;color:var(--ink);background:#fff;border-radius:13px;align-items:center;padding:0 15px;transition:all .16s;display:inline-flex}.choice-chip input:focus-visible+span{outline-offset:2px;outline:3px solid #dc6b3c52}.choice-chip.is-selected span{border-color:var(--navy);background:var(--navy);color:#fff}.other-input{margin-top:14px;position:relative}.other-input .text-input{padding-right:58px}.other-input span{color:var(--muted);font-size:.72rem;position:absolute;top:17px;right:14px}.feedback-description{margin-top:18px;position:relative}.feedback-description label{color:var(--ink);margin-bottom:8px;font-weight:700;display:block}.feedback-description .text-area{padding-right:58px}.feedback-description>span{color:var(--muted);font-size:.72rem;position:absolute;bottom:14px;right:14px}.photo-grid{grid-template-columns:1fr 1fr;gap:0;display:grid}.photo-card{padding:28px 24px}.photo-card+.photo-card{border-left:1px solid var(--line)}.photo-top{gap:12px;min-height:112px;display:flex}.photo-letter{background:var(--orange);color:#fff;border-radius:10px;flex:0 0 34px;place-items:center;height:34px;font-weight:800;display:grid}.photo-top h3{margin:2px 0 8px;font-size:1rem}.photo-top p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.55}.upload-zone{cursor:pointer;text-align:center;background:#fbfaf6;border:1px dashed #aab4b5;border-radius:16px;align-content:center;place-items:center;min-height:180px;margin:14px 0;display:grid}.upload-zone input{opacity:0;position:absolute}.upload-zone span{color:var(--navy);font-weight:750}.upload-zone small{color:var(--muted);margin-top:8px}.photo-preview{background:#e3e6e4;border-radius:16px;height:180px;margin:14px 0;position:relative;overflow:hidden}.photo-preview img{object-fit:cover;width:100%;height:100%}.photo-preview button{color:#fff;cursor:pointer;background:#141f29c7;border:0;border-radius:10px;min-height:36px;padding:0 12px;position:absolute;bottom:10px;right:10px}.review-card .field-block:last-of-type{border-bottom:0}.two-column{grid-template-columns:1fr 1fr;gap:12px;display:grid}.select-label span{color:var(--muted);margin-bottom:7px;font-size:.76rem;display:block}.photo-review-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.complete-shell{min-height:100vh}.complete-card{background:var(--surface);border:1px solid #203b561a;border-radius:28px;margin-top:11vh;padding:clamp(28px,6vw,64px);box-shadow:0 24px 80px #203b5617}.complete-card h1{max-width:600px;margin:12px 0 16px;font-family:Songti SC,STSong,serif;font-size:clamp(2.4rem,7vw,4.4rem);line-height:1.12}.complete-card>p:not(.kicker){color:var(--muted);line-height:1.7}.completed-days{grid-template-columns:repeat(7,1fr);gap:7px;margin:32px 0;display:grid}.completed-days span{border:1px solid var(--line);color:var(--muted);text-align:center;border-radius:10px;padding:10px 4px;font-size:.65rem}.completed-days .is-done{border-color:var(--teal);background:var(--teal);color:#fff}.complete-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.researcher-shell{width:min(100% - 32px,1180px);margin:0 auto;padding:44px 0 80px}.researcher-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;display:flex}.researcher-header h1{margin:10px 0;font-family:Songti SC,STSong,serif;font-size:clamp(2.5rem,6vw,4.8rem)}.researcher-header p:last-child{color:var(--muted);margin:0}.researcher-header>a{color:var(--navy)}.stats-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:18px;display:grid}.stats-grid article{border:1px solid var(--line);background:var(--surface);border-radius:20px;padding:24px}.stats-grid strong,.stats-grid span{display:block}.stats-grid strong{font-family:Songti SC,STSong,serif;font-size:2.4rem}.stats-grid span{color:var(--muted);margin-top:4px}.dashboard-actions{justify-content:flex-end;margin:18px 0;display:flex}.dashboard-message{border:1px solid var(--line);background:var(--surface);border-radius:18px;padding:22px}.submission-table-wrap{border:1px solid var(--line);background:var(--surface);border-radius:20px;overflow-x:auto}.submission-table{border-collapse:collapse;width:100%}.submission-table th,.submission-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:16px}.submission-table th{color:var(--muted);letter-spacing:.05em;font-size:.76rem}.submission-table td{font-size:.86rem}.submission-table tr:last-child td{border-bottom:0}.submission-table details{max-width:420px}.submission-table summary{color:var(--navy);cursor:pointer;font-weight:700}.submission-table pre{white-space:pre-wrap;background:#f2f4f3;border-radius:12px;max-height:320px;padding:12px;font-size:.7rem;overflow:auto}.photo-links{flex-direction:column;gap:6px;display:flex}.photo-links a{color:var(--navy)}@media (max-width:560px){.site-shell{width:min(100% - 24px,760px);padding-top:18px}.save-status{display:none}.hero{padding:52px 4px 28px}.hero h1{font-size:clamp(2.7rem,15vw,4rem)}.day-nav{gap:5px}.day-pill{border-radius:11px;min-height:48px;padding:0}.section-heading,.scale-question,.card-actions{padding-left:18px;padding-right:18px}.scale-options{gap:6px}.scale-options span{min-height:48px}.card-actions{align-items:flex-end}.card-actions p{max-width:120px}.welcome-shell{display:block}.welcome-brand{min-height:auto;padding:18px 20px}.welcome-brand span{width:42px;height:42px}.welcome-brand p{margin-top:13px}.welcome-copy{width:min(100% - 32px,760px);margin:0 auto;padding:48px 0 70px}.welcome-copy h1{font-size:clamp(3rem,16vw,4.4rem)}.notice-grid{grid-template-columns:1fr;gap:8px}.notice-grid article{min-height:auto}.day-selector{grid-template-columns:repeat(4,1fr)}.section-tabs span{padding:0 4px;font-size:.7rem}.section-tabs i{display:none}.photo-grid{grid-template-columns:1fr}.photo-card+.photo-card{border-top:1px solid var(--line);border-left:0}.photo-top{min-height:auto}.two-column,.photo-review-grid{grid-template-columns:1fr}.completed-days{grid-template-columns:repeat(4,1fr)}.complete-actions{align-items:stretch}.complete-actions button{width:100%}.researcher-shell{width:min(100% - 24px,1180px);padding-top:26px}.researcher-header{flex-direction:column;align-items:flex-start}.stats-grid{grid-template-columns:1fr}}
