@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8a480f0b521d4e75-s.06d3mdzz5bre_.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/7178b3e590c64307-s.11.cyxs5p-0z~.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/caa3a2e1cccd8315-s.p.16t1db8_9y2o~.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Fallback;src:local(Arial);ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.0%;size-adjust:104.76%}.geist_a71539c9-module__T19VSG__className{font-family:Geist,Geist Fallback;font-style:normal}.geist_a71539c9-module__T19VSG__variable{--font-geist-sans:"Geist", "Geist Fallback"}
@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/4fa387ec64143e14-s.0q3udbd2bu5yp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bbc41e54d2fcbd21-s.0gw~uztddq1df.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/797e433ab948586e-s.p.0.q-h669a_dqa.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Fallback;src:local(Arial);ascent-override:74.67%;descent-override:21.92%;line-gap-override:0.0%;size-adjust:134.59%}.geist_mono_8d43a2aa-module__8Li5zG__className{font-family:Geist Mono,Geist Mono Fallback;font-style:normal}.geist_mono_8d43a2aa-module__8Li5zG__variable{--font-geist-mono:"Geist Mono", "Geist Mono Fallback"}
@layer theme{:root,:host{--default-font-family:"Geist", "Geist Fallback", ui-sans-serif, system-ui, sans-serif;--default-mono-font-family:"Geist Mono", "Geist Mono Fallback", ui-monospace, monospace}}@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,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]){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{.flex{display:flex}.hidden{display:none}}:root{--paper:#fbfaf5;--paper-strong:#fff;--ink:#1c211b;--muted:#68705f;--line:#dce4d5;--green:#2f6f4e;--green-dark:#1e4b36;--coral:#d85a46;--sky:#2b6f9f;--gold:#b78319;--lilac:#7b6396;--shadow:0 18px 50px #2630211f;--background:var(--paper);--foreground:var(--ink)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);min-height:100vh;color:var(--ink);letter-spacing:0;margin:0;font-family:Geist,Geist Fallback,ui-sans-serif,system-ui,sans-serif}button,input,select,textarea{font:inherit;letter-spacing:0}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh;overflow-x:hidden}.hero-section{color:#fff;min-height:82svh;position:relative;overflow:hidden}.hero-image{object-fit:cover}.hero-overlay{background:#0e1d1280;position:absolute;inset:0}.top-nav{z-index:2;justify-content:flex-end;align-items:center;gap:1rem;width:min(1180px,100% - 2rem);margin:0 auto;padding:1.1rem 0;font-size:.95rem;display:flex;position:relative}.top-nav a:first-child{margin-right:auto;font-size:1.05rem;font-weight:800}.top-nav a{color:#ffffffe6;padding:.5rem .2rem}.nav-button{color:#ffffffe6;cursor:pointer;background:0 0;border:0;align-items:center;gap:.35rem;font-weight:700;display:inline-flex}.hero-content{z-index:1;width:min(1180px,100% - 2rem);margin:0 auto;padding:5rem 0 3rem;position:relative}.eyebrow,.section-kicker{color:var(--coral);text-transform:uppercase;margin:0 0 .75rem;font-size:.84rem;font-weight:800}.hero-content .eyebrow{color:#ffcc71}.hero-content h1{max-width:760px;margin:0;font-size:4.25rem;font-weight:850;line-height:1.05}.hero-actions{flex-wrap:wrap;align-items:center;gap:.85rem;margin-top:2rem;display:flex}.primary-action,.secondary-action,.topic-button{cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;gap:.5rem;min-height:2.8rem;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.primary-action{background:var(--coral);color:#fff;padding:0 1.15rem;font-weight:800;box-shadow:0 12px 30px #d85a4647}.secondary-action{border:1px solid var(--line);background:var(--paper-strong);width:fit-content;color:var(--green-dark);padding:0 1rem;font-weight:760}.primary-action:hover,.secondary-action:hover,.topic-button:hover{transform:translateY(-1px)}.hero-metrics{flex-wrap:wrap;gap:.8rem;margin-top:2rem;display:flex}.hero-metrics span{background:#ffffff21;border:1px solid #ffffff47;border-radius:8px;align-items:baseline;gap:.35rem;padding:.65rem .85rem;display:inline-flex}.hero-metrics strong{font-size:1.35rem}.section-band{padding:5rem 0}.section-inner{width:min(1180px,100% - 2rem);margin:0 auto}.section-heading{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.6rem;display:flex}.section-heading h2,.timeline-title h2,.contribute-copy h2{color:var(--ink);margin:0;font-size:2.35rem;line-height:1.15}.section-heading p,.timeline-title p,.contribute-copy p{max-width:620px;color:var(--muted);margin:.5rem 0 0;line-height:1.8}.memory-band{background:#f5faf0;padding-top:2.5rem}.topic-strip{color:var(--green-dark);flex-wrap:wrap;align-items:center;gap:.55rem;margin-bottom:1.5rem;display:flex}.status-pill,.save-hint{min-height:2.1rem;color:var(--coral);background:#fff7f1;border:1px solid #f0c7bd;border-radius:8px;align-items:center;gap:.45rem;padding:0 .72rem;font-size:.9rem;font-weight:760;display:inline-flex}.status-pill.ok,.save-hint{color:var(--green-dark);background:#eef8ef;border-color:#cce2d2}.topic-button{border:1px solid var(--line);background:var(--paper-strong);min-height:2.35rem;color:var(--green-dark);padding:0 .8rem}.topic-button.active{border-color:var(--green);background:var(--green);color:#fff}.admin-panel{background:#f8fcff;border:1px solid #cfe1ee;border-radius:8px;flex-wrap:wrap;align-items:center;gap:.75rem;margin:0 0 1.4rem;padding:.85rem;display:flex}.admin-field{border:1px solid var(--line);width:min(320px,100%);min-height:2.6rem;color:var(--sky);background:#fff;border-radius:8px;align-items:center;gap:.55rem;padding:0 .75rem;display:flex}.admin-field input{width:100%;color:var(--ink);background:0 0;border:0;outline:0}.admin-message{color:var(--muted);margin:0;font-size:.9rem}.memory-grid,.classmate-grid,.album-grid{gap:1rem;display:grid}.memory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.memory-card,.classmate-card,.album-tile,.memory-form,.classmate-form{border:1px solid var(--line);background:var(--paper-strong);box-shadow:var(--shadow);border-radius:8px}.memory-card{flex-direction:column;min-height:350px;padding:1.2rem;display:flex;overflow:hidden}.memory-photo{object-fit:cover;background:#e7eee0;width:calc(100% + 2.4rem);height:210px;margin:-1.2rem -1.2rem 1rem}.memory-card-top{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;display:grid}.card-meta,.author-line,.classmate-location{color:var(--muted);align-items:center;gap:.5rem;font-size:.9rem;display:flex}.card-meta{color:var(--sky);justify-content:space-between;font-weight:760}.danger-action{color:#ad3d2c;cursor:pointer;background:#fff7f1;border:1px solid #f0c7bd;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;min-height:2rem;padding:0 .65rem;font-size:.82rem;font-weight:780;display:inline-flex}.danger-action:disabled{cursor:wait;opacity:.7}.card-actions{flex-wrap:wrap;justify-content:flex-end;gap:.4rem;display:flex}.tiny-action{border:1px solid var(--line);min-height:2rem;color:var(--green-dark);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:.35rem;padding:0 .65rem;font-size:.82rem;font-weight:780;display:inline-flex}.memory-card h3,.album-tile h3,.timeline-item h3,.classmate-card h3{color:var(--ink);margin:.9rem 0 .55rem;font-size:1.25rem}.memory-card p,.album-tile p,.timeline-item p,.classmate-card p{color:var(--muted);margin:0;line-height:1.7}.memory-card .summary{color:var(--green-dark);margin-bottom:.8rem;font-weight:720}.tag-row{flex-wrap:wrap;gap:.45rem;margin-top:auto;padding-top:1rem;display:flex}.tag-row span{min-height:1.65rem;color:var(--green-dark);background:#edf5ea;border-radius:7px;align-items:center;padding:0 .52rem;font-size:.82rem;font-weight:700;display:inline-flex}.author-line{border-top:1px solid var(--line);margin-top:1rem;padding-top:.9rem}.comment-box{border-top:1px solid var(--line);gap:.75rem;margin-top:1rem;padding-top:1rem;display:grid}.comment-heading{color:var(--green-dark);justify-content:space-between;align-items:center;font-size:.92rem;font-weight:820;display:flex}.comment-heading span{align-items:center;gap:.4rem;display:inline-flex}.comment-list{gap:.55rem;display:grid}.comment-item{background:#f8fbf5;border:1px solid #e5ecdf;border-radius:8px;padding:.7rem}.comment-meta{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.3rem;display:flex}.comment-meta strong{color:var(--green-dark);font-size:.92rem}.comment-meta span,.empty-comments,.comment-message{color:var(--muted);font-size:.84rem}.comment-item p,.empty-comments,.comment-message{margin:0;line-height:1.55}.comment-form{gap:.55rem;display:grid}.comment-form input,.comment-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;outline:0}.comment-form input{min-height:2.35rem;padding:0 .7rem}.comment-form textarea{resize:vertical;padding:.65rem .7rem}.comment-form input:focus,.comment-form textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px #d85a4621}.comment-actions{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.comment-submit{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:2.1rem;padding:0 .85rem;font-weight:780;display:inline-flex}.comment-submit:disabled{cursor:wait;opacity:.72}.empty-state{background:#ffffffad;border:1px dashed #c6d5c2;border-radius:8px;gap:.45rem;padding:1.2rem;display:grid}.empty-state h3{color:var(--green-dark);margin:0;font-size:1.2rem}.empty-state p{color:var(--muted);margin:0;line-height:1.7}.anonymous-band{background:#f8fbf5}.anonymous-layout{grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);align-items:start;gap:1rem;display:grid}.anonymous-panel,.anonymous-thread{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:1.2rem}.anonymous-rule{color:var(--muted);margin:.8rem 0 1rem;line-height:1.7}.anonymous-form,.reply-form,.anonymous-feed{gap:.8rem;display:grid}.anonymous-form label{color:var(--green-dark);gap:.45rem;font-weight:760;display:grid}.anonymous-form input,.anonymous-form textarea,.reply-form input,.reply-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;outline:0}.anonymous-form input,.reply-form input{min-height:2.65rem;padding:0 .8rem}.anonymous-form textarea,.reply-form textarea{resize:vertical;padding:.8rem}.anonymous-form input:focus,.anonymous-form textarea:focus,.reply-form input:focus,.reply-form textarea:focus{border-color:var(--coral);box-shadow:0 0 0 3px #d85a4629}.anonymous-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;display:flex}.anonymous-meta div{flex-wrap:wrap;align-items:baseline;gap:.55rem;display:flex}.anonymous-meta strong{color:var(--green-dark)}.anonymous-meta span{color:var(--muted);font-size:.84rem}.anonymous-content,.reply-item p{color:var(--ink);white-space:pre-wrap;margin:.75rem 0 0;line-height:1.75}.reply-list{border-left:2px solid #dce8d4;gap:.65rem;margin-top:1rem;padding-left:1rem;display:grid}.reply-item{background:#f8fbf5;border:1px solid #e5ecdf;border-radius:8px;padding:.8rem}.reply-form{margin-top:1rem}.reply-form .comment-submit{justify-self:end;width:fit-content}.album-band{background:#fff7f1}.album-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.album-tile{overflow:hidden}.album-photo{background-image:url(/campus-memory-hero.png);background-size:cover;min-height:210px}.album-tile div:last-child{padding:1rem}.timeline-band{background:#eef7ff}.timeline-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:2rem;display:grid}.timeline-title{position:sticky;top:2rem}.timeline-list{gap:.8rem;display:grid}.timeline-item{background:var(--paper-strong);border:1px solid #cfe1ee;border-radius:8px;grid-template-columns:auto 1fr;gap:1rem;padding:1rem;display:grid}.timeline-dot{background:var(--sky);color:#fff;border-radius:8px;place-items:center;width:2.4rem;height:2.4rem;display:grid}.timeline-item span{color:var(--gold);font-weight:800}.timeline-item h3{margin-top:.25rem}.classmate-band{background:#fbfaf5}.classmate-layout{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);align-items:start;gap:1rem;display:grid}.classmate-grid{grid-template-columns:1fr}.classmate-card{grid-template-columns:auto 1fr;gap:1rem;padding:1.1rem;display:grid}.avatar{background:var(--lilac);color:#fff;border-radius:8px;place-items:center;width:3.4rem;height:3.4rem;font-size:1.4rem;font-weight:850;display:grid}.avatar-image{object-fit:cover;background:#e7eee0;border-radius:8px;width:3.4rem;height:3.4rem}.classmate-topline{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.6rem;display:flex}.classmate-topline h3{margin:0 0 .4rem}.classmate-topline span{color:var(--sky);font-size:.92rem;font-weight:780}.classmate-location{margin-top:.75rem}.classmate-empty{align-content:center;min-height:210px}.contribute-band{background:#f7f4ff}.contribute-layout{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:2rem;display:grid}.contribute-copy{gap:1.2rem;display:grid}.contribute-actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.memory-form,.classmate-form{gap:1rem;padding:1.2rem;display:grid}.memory-form label,.classmate-form label{color:var(--green-dark);gap:.45rem;font-weight:760;display:grid}.form-title-row{color:var(--green-dark);align-items:center;gap:.55rem;display:flex}.form-title-row h3{margin:0;font-size:1.1rem}.form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.memory-form input,.memory-form select,.memory-form textarea,.classmate-form input,.classmate-form textarea{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;outline:0}.memory-form input,.memory-form select,.classmate-form input,.classmate-form select{min-height:2.8rem;padding:0 .8rem}.memory-form textarea,.classmate-form textarea{resize:vertical;padding:.8rem}.memory-form input[type=file]{align-items:center;padding:.63rem .8rem;display:flex}.memory-form input:focus,.memory-form select:focus,.memory-form textarea:focus,.classmate-form input:focus,.classmate-form select:focus,.classmate-form textarea:focus,.admin-field:focus-within{border-color:var(--coral);box-shadow:0 0 0 3px #d85a4629}.form-message{color:var(--muted);margin:0;line-height:1.6}.form-submit{width:100%}.form-submit:disabled{cursor:wait;opacity:.72}.auth-shell,.app-shell{background:#fbfaf5;min-height:100vh}.auth-shell{place-items:center;padding:2rem;display:grid}.auth-panel{border:1px solid var(--line);width:min(460px,100%);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:1.4rem}.brand-mark{color:var(--green-dark);align-items:center;font-weight:850;display:inline-flex}.auth-panel h1,.page-hero h1{color:var(--ink);margin:.8rem 0 .65rem;font-size:2rem;line-height:1.15}.auth-panel p,.page-hero p,.policy-content p,.manage-card p{color:var(--muted);line-height:1.75}.auth-form,.panel-form,.inline-edit-form{gap:1rem;display:grid}.auth-form label,.panel-form label,.inline-edit-form label{color:var(--green-dark);gap:.45rem;font-weight:760;display:grid}.auth-form input,.panel-form input,.panel-form select,.panel-form textarea,.inline-edit-form input,.inline-edit-form select,.inline-edit-form textarea,.classmate-form select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:8px;outline:0}.auth-form input,.panel-form input,.panel-form select,.inline-edit-form input,.inline-edit-form select{min-height:2.8rem;padding:0 .8rem}.panel-form textarea,.inline-edit-form textarea{resize:vertical;padding:.8rem}.auth-switch{gap:.4rem;margin-bottom:0;display:flex}.auth-switch a{color:var(--coral);font-weight:800}.app-header{justify-content:space-between;align-items:center;gap:1rem;width:min(1180px,100% - 2rem);margin:0 auto;padding:1.1rem 0;display:flex}.app-header nav{color:var(--green-dark);flex-wrap:wrap;gap:1rem;font-weight:760;display:flex}.page-hero{width:min(1180px,100% - 2rem);margin:0 auto}.page-hero.compact{padding:2.6rem 0 1.6rem}.dashboard-grid,.admin-grid{grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr);align-items:start;gap:1rem;width:min(1180px,100% - 2rem);margin:0 auto 4rem;display:grid}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-form,.panel-list,.admin-column,.admin-profiles,.policy-content{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;padding:1.2rem}.panel-form h2,.panel-list h2,.admin-column h2,.admin-profiles h2,.policy-content h2{color:var(--ink);margin:0 0 1rem;font-size:1.25rem}.panel-list,.admin-column{gap:1rem;display:grid}.manage-card,.profile-row{background:#fbfdf8;border:1px solid #e5ecdf;border-radius:8px;padding:1rem}.manage-card-head,.profile-row{flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1rem;display:flex}.manage-card h3{color:var(--ink);margin:.35rem 0}.status-badge{border-radius:7px;align-items:center;min-height:1.6rem;padding:0 .55rem;font-size:.8rem;font-weight:800;display:inline-flex}.status-badge.pending{color:#8a6500;background:#fff7d7}.status-badge.published{color:var(--green-dark);background:#eef8ef}.status-badge.rejected{color:#ad3d2c;background:#fff1ee}.status-badge.hidden{color:#4c5963;background:#edf0f2}.inline-edit-form{margin-top:1rem}.moderation-actions{flex-wrap:wrap;gap:.55rem;display:flex}.public-actions{justify-content:flex-start;margin-top:.8rem}.report-inline{flex-wrap:wrap;align-items:center;gap:.45rem;display:inline-flex}.report-message{color:var(--muted);font-size:.82rem}.rules-link{color:var(--coral);margin:0;font-size:.92rem;font-weight:800}.rules-link a,.anonymous-rule a{color:var(--coral);font-weight:850}.rejected-reason{color:#ad3d2c;margin:.35rem 0 0;font-size:.92rem;line-height:1.55}.photo-manage-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.dashboard-photo{object-fit:cover;background:#e7eee0;border-radius:8px;width:100%;height:180px}.post-detail{gap:1.4rem;width:min(920px,100% - 2rem);margin:0 auto 4rem;display:grid}.post-detail-head{padding:2.4rem 0 .8rem}.post-detail-head h1{max-width:860px;color:var(--ink);margin:0;font-size:3rem;line-height:1.12}.post-detail-meta{color:var(--muted);flex-wrap:wrap;gap:.65rem;margin-top:1rem;display:flex}.post-detail-meta span{background:#edf5ea;border-radius:7px;align-items:center;min-height:1.8rem;padding:0 .55rem;display:inline-flex}.post-detail-image{object-fit:cover;border:1px solid var(--line);background:#e7eee0;border-radius:8px;width:100%;height:auto;max-height:620px}.post-body{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:1rem;padding:1.3rem;display:grid}.post-body p{color:var(--ink);margin:0;font-size:1.08rem;line-height:1.9}.detail-comments{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:8px;gap:1rem;padding:1.2rem;display:grid}.admin-profiles,.policy-content{width:min(1180px,100% - 2rem);margin:0 auto 4rem}.table-like{gap:.75rem;display:grid}.profile-row div:first-child{gap:.25rem;display:grid}.profile-row span{color:var(--muted);font-size:.92rem}.rules-content{gap:1rem;display:grid}.rules-content ul{color:var(--ink);gap:.75rem;margin:0;padding-left:1.2rem;line-height:1.8;display:grid}.site-footer{background:var(--green-dark);color:#ffffffe0;justify-content:center;align-items:center;gap:.5rem;padding:1.2rem;display:flex}@media (max-width:980px){.hero-content h1{font-size:3.15rem}.memory-grid,.album-grid,.anonymous-layout,.timeline-layout,.contribute-layout,.classmate-layout,.dashboard-grid,.admin-grid{grid-template-columns:1fr}.timeline-title{position:static}}@media (max-width:680px){.top-nav{justify-content:flex-start;gap:.7rem;overflow-x:auto}.top-nav a:first-child{min-width:max-content}.hero-section{min-height:88svh}.hero-content{padding:4rem 0 3.5rem}.hero-content h1{font-size:2.35rem}.hero-actions,.primary-action,.secondary-action{width:100%}.contribute-actions{align-items:stretch}.save-hint{justify-content:center;width:100%}.hero-metrics span{flex:120px}.section-band{padding:3.3rem 0}.section-heading{align-items:start;display:grid}.section-heading h2,.timeline-title h2,.contribute-copy h2{font-size:1.9rem}.classmate-grid,.form-row,.photo-manage-grid,.classmate-card{grid-template-columns:1fr}.post-detail-head h1{font-size:2.1rem}}
