@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Shippori+Mincho:wght@400;500;600;700&display=swap');
:root{--bg:#111720;--panel:#1d2530;--slate:#343d49;--cream:#e8ddb8;--muted:#aeb9c5;--blue:#7795b5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#f0e9d7;font:16px 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(20px,5vw,90px);border-bottom:1px solid #ffffff18;background:#121820ed;position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}.brand{display:flex;align-items:center;gap:13px;font-size:17px;letter-spacing:2px;font-weight:700}.brand small{display:block;font-size:9px;color:var(--muted);letter-spacing:1.7px;margin-top:4px}.moon{font-size:38px;color:var(--cream)}nav{display:flex;gap:32px}nav a{font-size:13px;color:#c6c8cb}nav a:hover{color:var(--cream)}.login-link,.btn{border-radius:5px;padding:13px 22px;font-weight:600;font-size:13px}.login-link{border:1px solid #a9a080;color:var(--cream)}.hero{min-height:620px;display:flex;align-items:center;position:relative;overflow:hidden;background:radial-gradient(circle at 75% 31%,#e9ddb2 0 58px,#a4b1ba 60px 63px,transparent 65px),radial-gradient(ellipse at 70% 50%,#36445a 0,transparent 47%),linear-gradient(140deg,#121a28,#202b3c 65%,#151c26)}.stars{position:absolute;inset:0;background-image:radial-gradient(#d6d3ca99 1px,transparent 1px);background-size:53px 63px;opacity:.4}.horizon{position:absolute;bottom:-40px;right:-5%;width:80%;height:220px;background:#101923;clip-path:polygon(0 100%,8% 67%,16% 74%,28% 30%,38% 67%,52% 38%,62% 61%,75% 17%,86% 58%,100% 27%,100% 100%);opacity:.7}.hero-content{position:relative;z-index:1;max-width:850px;padding:80px clamp(24px,10vw,160px)}.eyebrow{color:#c9b886;letter-spacing:3px;font-size:11px;font-weight:700}h1,h2,h3{font-family:'Shippori Mincho',serif}h1{font-size:clamp(43px,6vw,76px);line-height:1.3;margin:23px 0}h1 em{font-style:normal;color:var(--cream)}.hero-content>p:not(.eyebrow){max-width:490px;line-height:1.9;color:#cbd2da}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.primary{background:var(--cream);color:#17202c}.secondary{border:1px solid #9ba6b4;color:#f3f0e7}.section{padding:100px clamp(24px,9vw,150px);max-width:1500px;margin:auto}.section h2{font-size:clamp(28px,4vw,45px);margin:15px 0 22px}.lead{color:#b7c1cd;line-height:1.9;max-width:760px}.chapters,.roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:42px}.chapters article,.role,.login-box{border:1px solid #ffffff1c;background:#1b2430;border-radius:10px;padding:28px}.chapters article span{color:var(--cream);font-family:serif;font-size:24px}.chapters h3{font-size:22px}.chapters p,.role p,.portal-card p{color:#b8c3cd;line-height:1.8}.lore{margin-top:24px;border:1px solid #ffffff24;border-radius:8px}.lore summary{cursor:pointer;padding:22px;color:var(--cream);display:flex;justify-content:space-between}.lore #lore-full{padding:0 26px 25px;line-height:2;color:#c7cdd3;max-width:850px}.lore #lore-full p{margin:20px 0}.community{background:#151d27;max-width:none}.roles{grid-template-columns:repeat(4,minmax(0,1fr))}.role{padding:23px}.role h3{margin:8px 0;font-size:21px;color:var(--cream)}.role small{color:#a3b3c8}.role p{margin:8px 0 0;font-size:13px}.portal-card{display:grid;grid-template-columns:1.2fr 1fr;gap:70px;align-items:center}.notice{border-left:3px solid var(--cream);padding-left:16px;font-size:13px}.login-box{text-align:center}.seal{font-size:48px;color:var(--cream)}.login-box label{display:block;text-align:left;font-size:12px;color:#c7cdd5;margin:18px 0}.login-box input{display:block;width:100%;margin-top:8px;background:#101722;border:1px solid #465363;color:#fff;padding:13px;border-radius:5px}.login-box button{width:100%;padding:14px;background:#68788b;color:#e2e7eb;border:0;border-radius:5px;cursor:not-allowed}.login-box small{display:block;margin-top:15px;color:#aab3bd}footer{display:flex;justify-content:space-between;gap:20px;padding:35px 7vw;border-top:1px solid #ffffff24;color:#b9c2c9;font-size:12px}@media(max-width:900px){nav{display:none}.chapters{grid-template-columns:1fr}.roles{grid-template-columns:repeat(2,1fr)}.portal-card{grid-template-columns:1fr;gap:25px}.section{padding-top:65px;padding-bottom:65px}}@media(max-width:520px){.brand{font-size:12px}.brand small{font-size:7px}.login-link{padding:10px}.roles{grid-template-columns:1fr}.hero{min-height:550px}footer{flex-direction:column}}/* Mitgliederbereich v0.2 */
[hidden]{display:none!important}.form-message{font-size:13px;color:#e9c58e;min-height:18px}.login-box button{cursor:pointer;background:var(--cream);color:#192331;font-weight:700}.login-box button:disabled{opacity:.55;cursor:wait}.dashboard{min-height:85vh;display:grid;grid-template-columns:260px minmax(0,1fr);background:#111924}.dash-sidebar{background:#1b2632;border-right:1px solid #ffffff18;padding:30px 20px;display:flex;flex-direction:column;gap:10px}.dash-symbol{font-size:42px;color:var(--cream)}.dash-sidebar h3{margin:0;font-size:21px}.dash-sidebar small{color:#9daebb}.dash-menu{display:grid;gap:7px;margin-top:26px}.dash-menu button,.logout{background:transparent;border:1px solid transparent;border-radius:9px;text-align:left;color:#c5cfda;padding:13px 15px;cursor:pointer;font:inherit;font-size:13px}.dash-menu button.active,.dash-menu button:hover{background:#303e4d;border-color:#ffffff15;color:var(--cream)}.logout{margin-top:auto;border-color:#ffffff2b}.dash-main{padding:40px clamp(18px,4vw,70px);min-width:0}.dash-top{display:flex;justify-content:space-between;align-items:center;gap:16px;border-bottom:1px solid #ffffff1c;padding-bottom:24px}.dash-top h2{font-size:34px;margin:8px 0}.dash-top span{font-size:12px;color:#b6c2d0}.dash-content{padding-top:25px}.dash-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.dash-card,.dash-panel{background:#1d2935;border:1px solid #ffffff1d;border-radius:13px;padding:23px}.dash-card h3,.dash-panel h3{font-size:20px;margin:8px 0}.dash-card p,.dash-panel p,.muted{color:#aab9c8;line-height:1.6}.dash-card .value{font-size:32px;color:var(--cream);font-weight:700}.dash-panel{margin:16px 0}.dash-action{background:var(--cream);border:0;border-radius:7px;color:#17212c;padding:11px 17px;font:inherit;font-weight:700;cursor:pointer}.dash-action.secondary{background:#33485a;color:#e8edf4}.dash-input,.dash-select,.dash-textarea{width:100%;padding:11px 13px;border:1px solid #506173;border-radius:7px;background:#111b26;color:#f3f0e7;font:inherit;margin:8px 0 13px}.dash-textarea{min-height:90px;resize:vertical}.dash-form{max-width:650px}.dash-row{display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}.dash-list{display:grid;gap:12px}.dash-list-item{padding:17px;border:1px solid #ffffff1d;background:#17222d;border-radius:9px}.dash-list-item h4{margin:0 0 7px}.dash-list-item small{color:#a8b5c5}.permission-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.permission-grid label{font-size:13px;color:#ccd5dd}.board-space{height:510px;overflow:hidden;position:relative;background-color:#141f2a;background-image:radial-gradient(#60738650 1px,transparent 1px);background-size:23px 23px;border:1px solid #ffffff2d;border-radius:12px;touch-action:none}.board-note{position:absolute;width:210px;min-height:110px;padding:15px;background:#e6d8a8;color:#222a32;border-radius:9px;box-shadow:0 8px 25px #0005;cursor:grab;user-select:none;overflow-wrap:anywhere}.board-note:active{cursor:grabbing}.board-note button{float:right;background:transparent;border:0;cursor:pointer;color:#493b25}.board-note small{display:block;opacity:.7;margin-top:10px}.board-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:13px}.board-tools select{max-width:330px}.error{color:#f0b3a7}.success{color:#b6ddba}@media(max-width:900px){.dashboard{grid-template-columns:1fr}.dash-sidebar{border-right:0;border-bottom:1px solid #ffffff20}.dash-menu{display:flex;overflow:auto}.dash-menu button{white-space:nowrap}.logout{margin-top:5px}.dash-grid{grid-template-columns:1fr}.dash-main{padding:25px 17px}.permission-grid{grid-template-columns:1fr}}@media(max-width:550px){.dash-top{display:block}.board-space{height:420px}}

.task-pill{color:#e8ddb8;font-size:12px;background:#394452;border-radius:20px;padding:6px 10px}.task-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:15px}.task-actions button{font-size:12px}

/* v0.5 – Japanese typography and clearer role labels */
.brand-kanji{font-size:14px;display:inline-block;vertical-align:middle;margin-left:5px;color:#b7c9d9;font-family:'Shippori Mincho',serif}
.role{position:relative;overflow:hidden;min-height:194px}
.role-kanji{position:absolute;right:15px;top:4px;font:54px 'Shippori Mincho',serif;color:#d8c99d;opacity:.16;pointer-events:none}
.role-translation{font-weight:700;color:#e8ddb8!important;margin-top:3px!important}
.role-person{border-top:1px solid #ffffff19;padding-top:9px;margin-top:11px!important}
.self-rank-panel{border-color:#d3be865c;background:linear-gradient(125deg,#263443,#1b2935)}
.self-rank-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.self-rank-row .dash-select{flex:1;min-width:220px;margin:0}
.self-rank-row .dash-action{white-space:nowrap}
@media(max-width:550px){.self-rank-row .dash-action{width:100%}}

/* v0.8 public village sections */
.public-hub{border-top:1px solid #ffffff13}.public-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px;margin-top:28px}.public-card{border:1px solid #e8ddb82a;border-radius:12px;padding:24px;background:linear-gradient(155deg,#222f3c,#17212c);overflow-wrap:anywhere}.public-card small{font-size:11px;letter-spacing:1px;color:#d9c79c}.public-card h3{font-size:22px;color:#eee1bc;margin:12px 0}.public-card p{white-space:pre-wrap;line-height:1.7;color:#c1cbd4}.public-card strong{color:#e8ddb8}.dash-form label{color:#c9d1da}.public-hub:nth-of-type(even){background:#151d27}nav{gap:18px}@media(max-width:1100px){nav{display:none}}
