:root{color-scheme:dark;--bg:#0c151d;--card:#16212a;--gold:#ffd04f;--muted:#b7c1cb;--border:#34414b}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:20px}body{margin:0;background:radial-gradient(ellipse at 60% 35%,#26313a 0,transparent 60%),var(--bg);color:#f5f5f5;font:15px/1.55 system-ui,-apple-system,Segoe UI,sans-serif}button,input,.button{font:inherit}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:linear-gradient(120deg,#ffdb70,#ffca35);color:#161a1e;border:1px solid #e9bf4e;border-radius:6px;padding:11px 18px;font-weight:700;cursor:pointer;text-decoration:none;transition:filter .2s,transform .2s}button:hover,.button:hover{filter:brightness(1.1)}button:active,.button:active{transform:translateY(1px)}button:disabled{opacity:.45;cursor:default}.outline{background:#101a23b3;border:1px solid #83929d;color:#f4f6f8}.text-button{border:0;background:transparent;color:var(--gold);padding:5px 0;font-size:13px}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--gold);outline-offset:4px}[hidden]{display:none!important}header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 3%;min-height:103px;background:linear-gradient(100deg,#0c1823,#151b23);border-bottom:1px solid #7e683744}.brand{display:flex;align-items:center;gap:16px;text-decoration:none;flex-shrink:0}.brand svg{width:98px;height:98px;margin-bottom:-21px;filter:drop-shadow(0 0 9px #ffc74455)}.brand span{display:flex;flex-direction:column;line-height:1.15}.brand small{font-size:19px;letter-spacing:2px;color:#f2d58c;font-weight:800}.brand strong{font-size:clamp(18px,1.7vw,28px);font-stretch:condensed;color:#f6d887;letter-spacing:-1px}.brand em{font-size:8px;letter-spacing:.6px;font-style:normal;margin-top:8px;color:#c4cbd2}nav{display:flex;gap:26px}nav a{color:#c8d0d9;text-decoration:none;text-align:center;font-size:23px;line-height:1.4}nav span{display:block;font-size:12px}nav .active,nav a:hover{color:var(--gold)}.account{display:flex;gap:9px}.account button{font-size:12px;padding:10px 14px}.hero{height:360px;position:relative;overflow:hidden;text-align:center;display:grid;align-items:end;background:#26333e}.hero-photo,.hero-shade{position:absolute;inset:0}.hero-photo svg{height:100%;width:100%;display:block}.hero-shade{background:linear-gradient(0deg,#0c151d 0%,#0c151d70 42%,#00000008 100%)}.hero-copy{position:relative;padding:70px 20px 22px;text-shadow:0 2px 12px #000}.eyebrow{font-size:10px;letter-spacing:2px;color:#f4d07b;font-weight:700}h1{font-size:clamp(30px,3.4vw,49px);line-height:1.07;letter-spacing:-1.3px;margin:12px 0 4px}h1 span{color:var(--gold)}.hero p{font-size:19px;margin:0 0 15px}.hero-buttons{display:flex;justify-content:center;gap:14px}.hero-buttons>*{min-width:235px;box-shadow:0 2px 16px #ffce3322}.hero-buttons .outline{border-color:#e8c361}main{max-width:1600px;padding:0 22px 12px;margin:auto}.notice{padding:7px 12px;color:#d5c9a3;background:#292518;border:1px solid #66562f;border-radius:5px;font-size:11px;margin-bottom:10px}.dashboard{display:grid;grid-template-columns:1.12fr .68fr .8fr 1fr;gap:10px}.card{background:linear-gradient(135deg,#1d2931e8,#121d26f5);border:1px solid #33414b;border-top-color:#635b3b;border-radius:8px;padding:17px 19px;box-shadow:0 7px 20px #0002;min-width:0}h2{font-size:17px;line-height:1.3;margin:0 0 12px;display:flex;align-items:center;gap:10px}h2 i{font-style:normal;color:var(--gold);font-size:26px;line-height:1}h2 small{font-size:10px;font-weight:400;color:var(--muted);margin-left:auto}.welcome{grid-column:1/3;display:grid;grid-template-columns:1.2fr 1fr;gap:20px;min-height:315px}.welcome h2{font-size:21px}.gold-line{width:34px;height:2px;background:var(--gold);margin:0 0 12px}.welcome p,.team p{color:#d2d9df;font-size:13px;margin:8px 0}.welcome-photo{width:100%;height:100%;min-height:265px;object-fit:cover;border:1px solid #475058;border-radius:4px}.welcome-copy{display:flex;flex-direction:column}.values{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:22px;font-size:10px}.values span{display:flex;align-items:center;gap:6px}.values b{font-size:24px;color:var(--gold)}.chat{display:flex;flex-direction:column}.badge{background:#0c1720;border-radius:20px;padding:3px 7px;white-space:nowrap}.panel-content{flex:1;display:flex;flex-direction:column;justify-content:center;text-align:center;background:#0c17207a;border-radius:5px;padding:12px}.panel-content p{font-size:12px;color:var(--muted);margin:5px 0 10px}.panel-content h3{font-size:15px;margin:0}.panel-content button{font-size:12px}.lock{color:#e5c86b;font-size:31px}.chat-compose{display:flex;gap:6px;margin-top:12px}.chat-compose input{min-width:0;width:100%;font-size:12px}.chat-compose button{padding:8px 12px}.right-column{display:grid;gap:10px;grid-template-rows:auto 1fr}.two-buttons{display:flex;gap:8px;margin-top:10px}.two-buttons button{font-size:11px;flex:1;padding:9px 7px}.compact{align-items:flex-start;text-align:left;padding:8px 10px}.events{grid-column:1}.guestbook{grid-column:2}.gallery{grid-column:3/5}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.gallery-grid svg{width:100%;height:100px;border:1px solid #4b5862;border-radius:5px}.muted{color:#a9b7c2;font-size:11px}.gallery>.muted{display:block;margin-top:7px}.admin{grid-column:1/-1}.admin-tools{display:flex;gap:10px;flex-wrap:wrap}.admin>p{color:var(--muted)}.pending-row{display:flex;justify-content:space-between;gap:15px;align-items:center;border-top:1px solid var(--border);padding:12px 0}.pending-row span{overflow-wrap:anywhere}#inviteresult{margin:18px 0;max-width:700px}#inviteresult input{margin-bottom:8px}#identity{color:var(--gold)}footer{display:flex;gap:20px;align-items:center;border-top:1px solid #40505a;padding:12px 2%;background:#0d1821;font-size:9px;color:#b0bec9}footer strong{font-size:16px;color:#f1d188;letter-spacing:-.5px}footer span:last-child{margin-left:auto}dialog{max-width:470px;width:calc(100% - 28px);padding:30px;background:#15222d;color:#f3f4f6;border:1px solid #86713e;border-radius:12px;box-shadow:0 20px 100px #000a}dialog::backdrop{background:#030a11ce;backdrop-filter:blur(5px)}dialog h2{font-size:26px;margin-top:15px}dialog p{font-size:14px;color:#c5ced6}.close{position:absolute;right:12px;top:12px;padding:1px 10px;font-size:22px}label{display:block;font-size:13px;margin:14px 0 5px}input{width:100%;background:#0a151e;border:1px solid #53616d;color:#f5f5f5;border-radius:5px;padding:11px}dialog form>button{width:100%;margin-top:20px}#authstatus{color:#ffdb77;white-space:pre-line;overflow-wrap:anywhere}#join>small{font-size:10px;color:var(--muted)}@media(min-width:1700px){header{padding-left:calc((100% - 1556px)/2);padding-right:calc((100% - 1556px)/2)}}@media(max-width:1200px){header{gap:15px;flex-wrap:wrap}.brand{flex:1}nav{order:3;width:100%;justify-content:center;gap:45px}.brand svg{margin-bottom:0;width:80px;height:80px}.dashboard{grid-template-columns:1.2fr 1fr}.welcome{grid-column:1/-1}.chat{min-height:300px}.events,.guestbook{grid-column:auto}.gallery{grid-column:1/-1}.hero{height:350px}}@media(max-width:650px){header{padding:12px;gap:12px}.brand{gap:8px}.brand svg{width:61px;height:61px}.brand strong{font-size:19px}.brand small{font-size:14px}.brand em{font-size:6px;letter-spacing:0}.account{width:100%}.account button{flex:1}nav{gap:0;justify-content:space-around}nav a{font-size:20px}nav span{font-size:10px}.hero{height:340px}.hero-copy{padding:30px 12px 25px}.eyebrow{font-size:8px;letter-spacing:1px}h1{font-size:32px}.hero p{font-size:14px}.hero-buttons{gap:8px}.hero-buttons>*{min-width:0;padding:11px 10px;font-size:11px}main{padding:0 10px 10px}.dashboard{display:flex;flex-direction:column}.card{padding:17px}.welcome{display:flex;flex-direction:column}.welcome-photo{min-height:0;height:220px}.values{padding-top:15px}.chat{min-height:310px}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid svg{height:auto}.right-column{display:flex;flex-direction:column}footer{flex-wrap:wrap;gap:4px 10px;padding:14px}footer strong{font-size:14px}footer span:last-child{margin-left:0}.pending-row button{font-size:12px;padding:8px}}

.chat-messages{display:block;text-align:left;height:240px;max-height:320px;overflow-y:auto;scrollbar-width:thin;justify-content:normal}.chat-message{padding:9px 0;border-bottom:1px solid #ffffff0c}.chat-message>div{display:flex;justify-content:space-between;gap:8px;align-items:baseline}.chat-message strong{font-size:12px;overflow-wrap:anywhere}.chat-message time{font-size:9px;color:#a9b7c2;white-space:nowrap}.chat-message p{font-size:12px;color:#e3e8eb;white-space:pre-wrap;overflow-wrap:anywhere;margin:3px 0}.chat-message.own strong{color:var(--gold)}#chatstatus{font-size:10px;margin:7px 0 0;overflow-wrap:anywhere}.chat-compose{margin-top:8px}.chat{min-height:360px}

textarea{font:inherit;width:100%;resize:vertical;max-height:250px;background:#0a151e;border:1px solid #53616d;color:#f5f5f5;border-radius:5px;padding:11px}textarea:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.guestbook-entries{display:block;text-align:left;max-height:270px;overflow-y:auto;scrollbar-width:thin;padding:8px 10px}.guestbook-entry{padding:8px 0;border-bottom:1px solid #ffffff12}.guestbook-entry>div{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.guestbook-entry strong{font-size:12px;color:var(--gold);overflow-wrap:anywhere}.guestbook-entry time{font-size:10px;color:#a9b7c2;white-space:nowrap}.guestbook-entry p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere;color:#e3e8eb}#guestbookform button{font-size:12px;width:100%;margin-top:7px}#guestbookstatus{font-size:10px;overflow-wrap:anywhere}

.event-list{display:block;text-align:left;max-height:320px;overflow-y:auto;scrollbar-width:thin}.event-item{padding:10px 0;border-bottom:1px solid #ffffff12}.event-item time{font-size:11px;color:var(--gold);font-weight:700}.event-item h3{font-size:14px;margin:4px 0;overflow-wrap:anywhere}.event-item p{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;color:#d6dee5}.event-editor{margin-top:24px;padding-top:14px;border-top:1px solid var(--border);max-width:640px}.event-editor h3{color:var(--gold)}#eventform button{margin-top:12px}#eventform small{display:block;margin-top:5px}#eventcreatestatus,#eventstatus{overflow-wrap:anywhere}

.birthday-navigation{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:10px 0}.birthday-navigation button{padding:0 10px;font-size:22px}.birthday-navigation strong{font-size:12px;text-transform:capitalize}.birthday-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:3px;text-align:center;font-size:11px}.birthday-grid span,.birthday-grid small{display:grid;place-items:center;min-height:25px}.birthday-grid small{color:#aebac4}.has-birthday{background:var(--gold);color:#17212a;border-radius:50%;font-weight:800}.birthday-grid .today{outline:1px solid #ffd04f;outline-offset:-1px;border-radius:50%}#birthdaylist{margin-top:8px;max-height:140px;overflow-y:auto}#birthdaylist p{font-size:11px;color:#dce1e5;margin:5px 0;overflow-wrap:anywhere}#birthdaydetails{border-top:1px solid var(--border);margin-top:8px;padding-top:10px}#birthdaydetails summary{font-size:12px;color:var(--gold);cursor:pointer}.birthday-fields{display:grid;grid-template-columns:1fr 2fr;gap:10px}.birthday-fields select{font:inherit;background:#0a151e;color:#f5f5f5;border:1px solid #53616d;border-radius:5px;width:100%;padding:11px}.birthday-visible{display:flex;align-items:flex-start;gap:8px;font-size:11px}.birthday-visible input{width:auto;margin-top:3px}#birthdayform>button{font-size:11px;margin:10px 4px 0 0;padding:8px}#birthdaystatus{font-size:10px;overflow-wrap:anywhere}

.delete-button{font-size:10px;line-height:1.3;padding:4px 8px;background:transparent;color:#ffb3a9;border:1px solid #97544e;margin-top:6px}.delete-button:hover{background:#772c2933}.delete-button:disabled{opacity:.5}

.member-manager{border-top:1px solid var(--border);margin-top:22px;padding-top:12px}.member-manager h3{color:var(--gold)}.member-manager>p{color:var(--muted);font-size:13px}.member-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid #ffffff12}.member-row>div{min-width:0}.member-row strong{display:block;font-size:13px;overflow-wrap:anywhere}.member-row small{display:block;font-size:11px}.member-row button{font-size:11px;padding:6px 10px;flex-shrink:0}.member-blocked{color:#ffb3a9}@media(max-width:650px){.member-row{flex-wrap:wrap}}

.member-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-height:430px;overflow-y:auto;margin:10px 0 15px}.gallery-item{min-width:0;background:#0a151e;border:1px solid var(--border);border-radius:6px;padding:7px}.gallery-open{display:block;width:100%;padding:0;background:transparent;border:0;border-radius:3px;overflow:hidden}.gallery-open img{display:block;width:100%;height:115px;object-fit:cover;font-size:10px;color:#ddd}.gallery-item p{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;margin:6px 0}.gallery-item small{display:block;font-size:9px;color:var(--muted);overflow-wrap:anywhere}.gallery details{border-top:1px solid var(--border);padding-top:12px}.gallery summary{color:var(--gold);font-size:13px;cursor:pointer}#gallerypreview{display:block;max-width:100%;max-height:200px;margin:12px auto;border-radius:5px}#galleryform>button{margin-top:10px}#galleryform input[type=file]{font-size:12px}#gallerystatus{font-size:11px;overflow-wrap:anywhere}#imagedialog{max-width:1000px;width:calc(100% - 24px);max-height:94vh;padding:15px}#imagedialog>button{display:flex;margin-left:auto;margin-bottom:12px}#fullimage{display:block;max-width:100%;max-height:72vh;margin:auto;object-fit:contain}#fullcaption{white-space:pre-wrap;overflow-wrap:anywhere}@media(max-width:650px){.member-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}

.role-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.role-control select{font:inherit;font-size:12px;background:#0a151e;color:#eee;border:1px solid #53616d;border-radius:5px;padding:8px}.member-row{flex-wrap:wrap}.member-row>div:first-child{flex:1}#profiledialog{max-width:490px}#profiledialog h3{color:var(--gold);font-size:17px}#profiledialog hr{border:0;border-top:1px solid var(--border);margin:22px 0}#profilestatus,#passwordstatus{color:#ffd56b;overflow-wrap:anywhere}

#recoveryresult{padding:12px;border:1px solid #b39543;border-radius:6px;margin-top:12px;background:#292517}#personalrecoverycode{font:12px ui-monospace,monospace;margin-bottom:10px}#recoverystatus{font-size:12px;color:#ffd56b;overflow-wrap:anywhere}#recoverycode{font-family:ui-monospace,monospace;font-size:13px}#openrecovery{margin-top:12px}

.merch-section{grid-column:1/-1;padding:25px}.merch-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.merch-heading h2{font-size:26px;margin:6px 0}.merch-heading p{color:var(--muted);margin:5px 0 12px;font-size:13px}.merch-heading>button{font-size:12px}.merch-note{padding:12px 14px;border:1px solid #8d773e;border-radius:6px;background:#30291a;color:#e7d8ac;font-size:12px;line-height:1.6}.merch-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:18px 0 25px}.merch-product{background:#0c1821;border:1px solid var(--border);border-radius:8px;padding:14px;min-width:0;display:flex;flex-direction:column}.merch-image{height:210px;background:radial-gradient(ellipse,#293746,#101923);display:grid;place-items:center;border-radius:5px;overflow:hidden}.merch-image img{display:block;width:100%;height:210px;object-fit:contain}.merch-image p{font-size:16px;color:#e4c97f;text-align:center;max-width:180px;letter-spacing:1px}.merch-product h3{font-size:18px;color:#f2d589;margin:14px 0 7px;overflow-wrap:anywhere}.merch-description{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;color:#c6d1d9}.merch-product .merch-description{max-height:160px;overflow-y:auto;margin:0 0 10px}.merch-price{display:block;font-size:21px;color:var(--gold);margin-top:auto}.merch-product>small{display:block;font-size:11px;color:#afbeca;margin:5px 0;overflow-wrap:anywhere}.merch-product .merch-draft{color:#ffbc91}.merch-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.merch-actions button{font-size:12px;padding:9px 12px}.merch-section details{border-top:1px solid var(--border);margin-top:18px;padding-top:16px}.merch-section summary{color:var(--gold);font-size:16px;font-weight:700;cursor:pointer}.merch-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}#mercheditor{max-width:920px}#mercheditor h3{color:var(--gold)}#merchimage{font-size:12px}#mercheditstatus,#merchrequeststatus{color:#ffd56b;font-size:13px;overflow-wrap:anywhere}#merchrequestdialog select,.merch-actions select{width:100%;font:inherit;background:#0a151e;border:1px solid #53616d;color:#f4f4f4;border-radius:5px;padding:10px}.merch-actions select{width:auto;font-size:12px}.merch-inquiry{border:1px solid var(--border);background:#0d1922;border-radius:6px;padding:14px;margin:12px 0}.merch-inquiry h4{color:#f1d082;margin:0 0 7px;font-size:16px;overflow-wrap:anywhere}.merch-inquiry p{font-size:12px;overflow-wrap:anywhere}.merch-inquiry small{color:var(--muted);font-size:11px}.merch-inquiry>strong{display:inline-block;color:var(--gold);font-size:11px;margin-left:15px}nav #merchnav{font-size:23px}@media(max-width:1200px){.merch-products{grid-template-columns:repeat(2,minmax(0,1fr))}nav{gap:28px}}@media(max-width:650px){.merch-section{padding:17px}.merch-heading{align-items:flex-start;flex-direction:column;gap:6px}.merch-heading h2{font-size:23px}.merch-products{grid-template-columns:1fr}.merch-fields{grid-template-columns:1fr;gap:0}nav{gap:0}nav span{font-size:9px}}
