*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:#050505}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}.app-bg{min-height:100vh;background:#050505;color:#f5f5f5}.phone-shell{position:relative;max-width:440px;min-height:100vh;margin:0 auto;border-left:1px solid #262626;border-right:1px solid #262626;background:linear-gradient(180deg,#300707,#0a0a0a 35%,#050505);box-shadow:0 0 50px #00000080}.loading-screen{min-height:100vh;display:grid;place-items:center;color:#a3a3a3}.header{position:sticky;top:0;z-index:30;border-bottom:1px solid #262626;background:#000000e0;padding:12px 16px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-row,.header-left{display:flex;align-items:center;justify-content:space-between;gap:12px}.header-left{justify-content:flex-start}.header-icon,.icon-button{width:40px;height:40px;border-radius:16px;display:grid;place-items:center;background:#7f1d1d;color:#fff;border:0}.icon-button{background:#171717;border:1px solid #262626}.eyebrow{margin:0;font-size:11px;color:#737373;text-transform:uppercase;letter-spacing:.14em}.eyebrow.red{color:#fecaca}.header-title{margin:2px 0 0;max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:16px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;padding:16px;background:#000000b3}.side-menu{margin-left:auto;width:288px;height:100%;padding:16px;border-radius:28px;border:1px solid #262626;background:#0a0a0a;box-shadow:0 25px 60px #0000008c}.side-menu-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.side-menu-title{margin:0;font-weight:700}.menu-item{display:flex;gap:12px;align-items:center;width:100%;border:0;background:transparent;color:#f5f5f5;padding:12px;border-radius:16px;text-align:left}.menu-item:hover{background:#171717}.menu-item.danger{color:#fecaca}.login-screen{min-height:100vh;display:grid;place-items:center;padding:24px}.login-card-wrap{width:100%}.login-brand{text-align:center;margin-bottom:28px}.login-logo{width:80px;height:80px;display:grid;place-items:center;margin:0 auto 18px;border-radius:28px;background:#450a0a;font-size:40px}.login-brand h1{margin:0;font-size:32px}.login-brand p,.kanji{color:#a3a3a3}.login-card{border:1px solid #262626;border-radius:28px;background:#171717d9;padding:20px}.login-note{margin:0 0 18px;padding:12px;border-radius:16px;background:#0006;color:#d4d4d4;font-size:14px}.login-card label{display:block;margin:14px 0 8px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#737373}.login-card input{width:100%;padding:13px 16px;border-radius:16px;border:1px solid #262626;background:#050505;color:#f5f5f5;outline:none}.login-card button,.primary-button{width:100%;margin-top:18px;padding:13px 16px;border:0;border-radius:16px;background:#991b1b;color:#fff;font-weight:700}.error-text{color:#fecaca;font-size:13px}.kanji{text-align:center;font-size:12px}.screen{padding:16px 16px 112px;display:grid;gap:20px}.hero-card,.section-head,.content-card,.empty-card{border:1px solid #262626;border-radius:28px;padding:20px;background:#171717db;box-shadow:0 18px 40px #00000047}.hero-card{background:linear-gradient(135deg,#050505,#450a0a)}.hero-card.compact h1,.section-head h1{margin:0 0 8px;font-size:24px}.hero-card h1{margin:8px 0;font-size:32px}.hero-card p,.section-head p,.content-card p{color:#d4d4d4;line-height:1.55}.stack{display:grid;gap:12px}.stack h2,.content-card h2{margin:0;font-size:16px}.search-wrap{position:relative}.search-icon{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#737373}.search-input{width:100%;padding:16px 16px 16px 48px;border:1px solid #262626;border-radius:28px;background:#171717e6;color:#f5f5f5;outline:none}.quick-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.quick-card,.category-card,.item-card{border:1px solid #262626;border-radius:24px;padding:16px;background:#171717db;color:#f5f5f5;text-align:left}.quick-card span{display:block;margin-bottom:12px;font-size:22px}.quick-card p,.category-card h3,.item-card h3{margin:0}.category-card:hover,.item-card:hover,.quick-card:hover{border-color:#991b1bd9}.item-card.featured{border-color:#f59e0b8c;background:#450a0ab8}.card-row{display:flex;gap:12px;align-items:flex-start}.card-icon{width:44px;height:44px;flex:0 0 44px;display:grid;place-items:center;border-radius:16px;background:#450a0acc;font-size:21px}.category-label{margin:0 0 4px;color:#fecaca;font-size:11px}.muted{color:#a3a3a3}.small{font-size:13px}.tiny{font-size:11px;margin-top:12px}.line-clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.body-text{display:grid;gap:12px;font-size:14px;line-height:1.6;color:#d4d4d4}.button-stack{display:grid;gap:10px;margin-top:18px}.primary-link{display:flex;align-items:center;justify-content:center;gap:8px;border-radius:16px;padding:13px 16px;background:#991b1b;color:#fff;font-weight:700;font-size:14px}.tag-list{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.tag-list span{border:1px solid #262626;border-radius:999px;background:#050505;padding:6px 10px;color:#a3a3a3;font-size:12px}.bottom-nav{position:fixed;bottom:0;left:50%;z-index:30;width:100%;max-width:440px;transform:translate(-50%);border-top:1px solid #262626;background:#000000e6;padding:8px 12px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.bottom-nav-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.bottom-nav-button{display:flex;flex-direction:column;align-items:center;gap:4px;border:0;border-radius:16px;background:transparent;color:#737373;padding:8px 4px;font-size:11px}.bottom-nav-button.active{background:#450a0ae6;color:#fee2e2}.bottom-nav-icon{font-size:18px}@media(min-width:720px){.phone-shell{min-height:100vh}}.recovery-screen{padding:24px}.recovery-card{max-width:360px;width:100%;border:1px solid rgba(255,255,255,.12);border-radius:28px;background:#141414d1;padding:22px;box-shadow:0 20px 60px #00000059}.recovery-card h1{margin:0 0 10px;font-size:24px}.recovery-card p{margin:0 0 18px;color:#d4d4d4;line-height:1.55}.secondary-button{width:100%;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:#ffffff0f;color:#fff;padding:12px 14px;font-weight:700}.loading-screen-polished{padding:24px;background:radial-gradient(circle at 50% 18%,rgba(153,27,27,.22),transparent 34%),linear-gradient(180deg,#450a0a47,#050505f5)}.loading-card{width:min(360px,100%);border:1px solid rgba(255,255,255,.12);border-radius:32px;background:#121212db;padding:26px 22px;text-align:center;box-shadow:0 24px 70px #00000061}.loading-emblem{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 18px;border-radius:26px;background:linear-gradient(135deg,#450a0a,#991b1b);color:#fef2f2;font-size:34px;font-weight:800;box-shadow:inset 0 0 0 1px #ffffff1a,0 18px 45px #00000047}.loading-card h1{margin:0;font-size:30px;letter-spacing:-.03em}.loading-title{margin:18px 0 6px;color:#f5f5f5;font-size:17px;font-weight:700}.loading-detail{margin:0;color:#a3a3a3;font-size:14px;line-height:1.55}.loading-dots{display:flex;justify-content:center;gap:8px;margin-top:22px}.loading-dots span{width:8px;height:8px;border-radius:999px;background:#ef4444;animation:loadingDot 1.2s infinite ease-in-out;opacity:.42}.loading-dots span:nth-child(2){animation-delay:.16s}.loading-dots span:nth-child(3){animation-delay:.32s}.loading-actions{margin-top:24px}@keyframes loadingDot{0%,80%,to{transform:translateY(0);opacity:.35}40%{transform:translateY(-7px);opacity:1}}.sync-pill{position:fixed;top:72px;left:50%;z-index:35;transform:translate(-50%);max-width:320px;border:1px solid rgba(120,113,108,.45);border-radius:999px;background:#0c0a09e0;color:#fef3c7;padding:.45rem .8rem;font-size:.75rem;box-shadow:0 18px 45px #00000059;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.membership-plan-card h2{margin-top:.35rem;font-size:1.65rem;line-height:1.15}.membership-data-list{display:grid;gap:.35rem;margin-top:1rem;color:#f5f5f5db}.membership-data-list p{margin:0}.membership-data-list strong{color:#fee2e2eb}.membership-description{margin-top:1rem;color:#d4d4d4eb}:root{--minami-bg: #120403;--minami-black: #050302;--minami-card: rgba(32, 9, 6, .9);--minami-card-2: rgba(77, 18, 12, .78);--minami-border: rgba(255, 182, 0, .24);--minami-gold: #ffb000;--minami-gold-2: #ffc433;--minami-red: #e3171f;--minami-red-dark: #6b1a12;--minami-brown: #64190f}body,.app-bg{background:var(--minami-black)}.phone-shell{background:radial-gradient(circle at 50% 0%,rgba(255,176,0,.18),transparent 30%),linear-gradient(180deg,#64190f,#230806 30%,#050302);border-color:#ffb0002e}.header,.bottom-nav{border-color:#ffb00029;background:#080302eb}.header-icon,.login-logo,.loading-emblem{background:linear-gradient(135deg,var(--minami-brown),var(--minami-red))}.icon-button{background:#200906e6;border-color:#ffb0002e}.eyebrow.gold,.eyebrow.red{color:var(--minami-gold-2)}.login-card,.hero-card,.section-head,.content-card,.empty-card,.category-card,.item-card,.bulletin-card{border-color:var(--minami-border);background:var(--minami-card)}.hero-card,.member-hero-card{background:radial-gradient(circle at 82% 0%,rgba(255,176,0,.22),transparent 30%),linear-gradient(135deg,#220704,#6b1a12 68%,#2a0805)}.primary-button,.login-card button,.primary-link,.bottom-nav-button.active{background:linear-gradient(135deg,#e3171f,#9b1c16);color:#fff7ed}.primary-link:hover,.primary-button:hover{filter:brightness(1.08)}.category-label,.muted.tiny,.loading-title{color:var(--minami-gold-2)}.card-icon{background:#ffb0001f;color:var(--minami-gold)}.item-card.featured{border-color:#ffb0008c;background:#64190fb8}.tag-list span{border-color:#ffb00033;background:#050302e6}.member-hero-card{border:1px solid var(--minami-border);border-radius:30px;padding:20px;box-shadow:0 18px 40px #0000004d}.member-hero-card h1{margin:8px 0 16px;font-size:26px;line-height:1.15}.member-summary-table{display:grid;gap:10px}.member-summary-table div{display:grid;gap:4px;padding:12px;border:1px solid rgba(255,176,0,.18);border-radius:18px;background:#0503026b}.member-summary-table span{color:#ffc433e0;font-size:11px;letter-spacing:.12em;text-transform:uppercase}.member-summary-table strong{color:#fff7ed;line-height:1.35}.profile-table{margin-top:14px}.bulletin-intro{border-color:#ffb00047}.bulletin-list{display:grid;gap:14px}.bulletin-card{width:100%;text-align:left;color:#fff7ed;border-radius:26px;padding:16px;box-shadow:0 16px 32px #0000003d}.bulletin-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}.bulletin-head span{color:var(--minami-gold-2);font-size:12px;font-weight:800}.bulletin-head small{color:#fff7ed9e}.bulletin-card h3{margin:0 0 8px}.bulletin-card p{margin:0;color:#fff7edc7;line-height:1.5}.search-wrap{display:none}.role-badge{display:inline-flex;align-items:center;width:fit-content;margin:.55rem 0 .25rem;padding:.32rem .65rem;border-radius:999px;border:1px solid rgba(255,195,0,.35);background:#ffc3001f;color:#ffd65a;font-size:.76rem;font-weight:700}.role-badge.role-instructor{border-color:#ffc300a6;background:linear-gradient(135deg,#ffc3002e,#7a1d1340);color:#ffe07a}.role-badge.role-alumno{border-color:#ffffff29;background:#ffffff0f;color:#ffffffd1}.role-detail-card h2{margin:.25rem 0 .5rem;color:#ffd65a}.bulletin-list-card{display:block;width:100%;text-align:left;padding:1rem}.bulletin-list-card h3{margin:0 0 .55rem}.bulletin-meta-line{display:flex;flex-wrap:wrap;gap:.45rem .75rem;align-items:center;justify-content:space-between;color:var(--muted);font-size:.82rem}.bulletin-detail-meta p{margin:.25rem 0}.member-card-back{position:relative;overflow:hidden;border:1px solid rgba(255,176,0,.24);border-radius:30px;padding:18px;background:radial-gradient(circle at 88% 10%,rgba(255,176,0,.18),transparent 32%),linear-gradient(135deg,#0c0402f2,#64190fd1);box-shadow:0 18px 40px #0000004d}.member-card-back:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(255,176,0,.1);border-radius:24px;pointer-events:none}.member-card-back-mark{position:absolute;right:18px;top:8px;font-size:92px;line-height:1;font-weight:900;color:#ffb00014;-webkit-user-select:none;user-select:none}.member-card-back-content{position:relative;z-index:1}.member-card-back h2{margin:6px 0 2px;font-size:20px;line-height:1.2;color:#fff7ed}.kanji-line{margin:0 0 14px;color:#ffc433d6;font-size:13px;letter-spacing:.12em}.member-card-back-grid{display:grid;gap:9px;margin-top:12px}.member-card-back-grid div{display:grid;gap:3px;padding:10px 12px;border:1px solid rgba(255,176,0,.16);border-radius:16px;background:#05030257}.member-card-back-grid span{color:#ffc433d1;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.member-card-back-grid strong{color:#fff7ed;font-size:14px;line-height:1.35}.member-card-back-note{margin:14px 0 0;color:#fff7edbd;font-size:12px;line-height:1.5}.event-intro{border-color:#ffb00047}.event-list{display:grid;gap:14px}.event-card{width:100%;border:1px solid rgba(255,176,0,.2);border-radius:26px;padding:16px;background:#200906e0;box-shadow:0 16px 32px #0000003d;color:#fff7ed}.event-card-head{display:grid;gap:6px;margin-bottom:14px}.event-card-head h3{margin:0;font-size:17px;line-height:1.25}.event-card-head span{color:var(--minami-gold-2);font-size:13px;font-weight:700}.event-link{margin-top:0}.study-hub-card{display:grid;gap:16px;border-color:#ffb00057}.study-hub-card h2,.study-hub-card h3{margin:0}.study-grade-card{display:grid;gap:4px;padding:14px;border:1px solid rgba(255,176,0,.18);border-radius:20px;background:#0503026b}.study-grade-card span{color:#ffc433d1;font-size:10px;letter-spacing:.12em;text-transform:uppercase}.study-grade-card strong{color:#fff7ed;font-size:20px}.study-sections-grid{display:grid;gap:12px}.study-section-card{display:grid;gap:10px;padding:14px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:#ffffff0b}.study-section-card h3{color:#fff7ed;font-size:16px}.study-section-card p{margin:0}.study-small-link{padding:11px 13px;font-size:13px}.study-area-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.study-area-tab{display:grid;gap:3px;border:1px solid rgba(255,255,255,.1);border-radius:18px;padding:11px 12px;background:#0503025c;color:#fff7edd1;text-align:left}.study-area-tab.active{border-color:#ffb00070;background:linear-gradient(135deg,#e3171f4d,#ffb0001a);color:#fff7ed}.study-area-tab span{font-weight:800}.study-area-tab small{color:#ffc433d1;font-size:11px}.study-progress-panel{display:grid;gap:12px;padding:14px;border:1px solid rgba(255,176,0,.18);border-radius:22px;background:#0503024d}.study-progress-head{display:flex;justify-content:space-between;align-items:center;gap:12px}.study-progress-head span{color:#ffc433e0;font-size:12px;font-weight:700}.study-checklist{display:grid;gap:10px}.study-check-row{display:grid;gap:12px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:#ffffff0a}.study-row-main{display:grid;gap:4px}.study-path{color:#ffc433d1!important;font-weight:800;letter-spacing:.02em}.study-check-row strong{color:#fff7ed;line-height:1.3}.study-check-row small{color:#d4d4d4db;line-height:1.45}.study-row-progress{display:grid;gap:6px}.study-boxes{display:grid;grid-template-columns:repeat(auto-fill,minmax(22px,1fr));gap:5px}.study-box{min-width:22px;height:24px;border:1px solid rgba(255,255,255,.24);border-radius:6px;background:linear-gradient(135deg,#ffffff1a,#ffffff05);box-shadow:inset 0 1px #ffffff1a}.study-box.active{border-color:#ffb000db;background:linear-gradient(135deg,#e3171fb8,#ffb0006b);box-shadow:0 0 0 1px #ffb00033,inset 0 1px #ffffff2e}.study-box:focus-visible{outline:2px solid rgba(255,176,0,.85);outline-offset:2px}.study-row-progress>small{color:#ffc433d1;font-size:11px;font-weight:800;text-align:right}@media(max-width:420px){.study-area-tabs{grid-template-columns:1fr}}.app-frame{min-height:100vh}.app-main,.view-container{min-width:0}.desktop-sidebar{display:none}@media(min-width:960px){html,body,#root{min-height:100%}body{background:radial-gradient(circle at 16% 0%,rgba(255,176,0,.1),transparent 34%),radial-gradient(circle at 85% 10%,rgba(227,23,31,.1),transparent 30%),#050302}.app-bg{min-height:100vh;padding:24px;background:radial-gradient(circle at 8% 0%,rgba(255,176,0,.12),transparent 32%),radial-gradient(circle at 100% 18%,rgba(227,23,31,.11),transparent 30%),var(--minami-black)}.phone-shell{width:100%;max-width:1360px;min-height:calc(100vh - 48px);margin:0 auto;overflow:hidden;border:1px solid rgba(255,176,0,.2);border-radius:34px;background:linear-gradient(135deg,#110403fa,#070302fa),var(--minami-black);box-shadow:0 28px 95px #0000007a}.app-frame{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:calc(100vh - 50px)}.desktop-sidebar{position:sticky;top:0;display:flex;flex-direction:column;gap:18px;height:calc(100vh - 50px);min-height:720px;overflow-y:auto;padding:24px;border-right:1px solid rgba(255,176,0,.16);background:radial-gradient(circle at 50% 0%,rgba(255,176,0,.12),transparent 34%),linear-gradient(180deg,#410f0ab8,#050302f5)}.desktop-brand-card,.desktop-member-card{border:1px solid rgba(255,176,0,.2);border-radius:26px;background:#05030270;box-shadow:0 18px 42px #00000038}.desktop-brand-card{display:grid;grid-template-columns:auto 1fr;gap:14px;align-items:center;padding:18px}.desktop-brand-mark{width:54px;height:54px;display:grid;place-items:center;border-radius:20px;background:linear-gradient(135deg,var(--minami-brown),var(--minami-red));color:#fff7ed;font-size:28px;font-weight:900;box-shadow:0 16px 34px #00000047}.desktop-brand-card h1,.desktop-member-card h2{margin:4px 0 0;color:#fff7ed;line-height:1.12}.desktop-brand-card h1{font-size:24px}.desktop-brand-subtitle{margin:6px 0 0;color:#fff7eda8;font-size:13px}.desktop-member-card{padding:16px}.desktop-member-card h2{font-size:18px}.desktop-member-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.desktop-member-meta span,.desktop-role-line{border:1px solid rgba(255,176,0,.16);border-radius:999px;background:#ffb00012;color:#fff7edc7;font-size:12px;line-height:1.4}.desktop-member-meta span{padding:6px 9px}.desktop-role-line{margin:10px 0 0;padding:8px 10px}.desktop-nav-list,.desktop-sidebar-actions{display:grid;gap:9px}.desktop-nav-list{flex:1}.desktop-nav-item{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:center;width:100%;padding:12px 13px;border:1px solid transparent;border-radius:18px;background:transparent;color:#fff7edc7;text-align:left}.desktop-nav-item span{width:34px;height:34px;display:grid;place-items:center;border-radius:13px;background:#ffb0001a;color:var(--minami-gold-2)}.desktop-nav-item strong{font-size:14px;line-height:1.18}.desktop-nav-item small{color:#ffc433c2;font-size:11px}.desktop-nav-item:hover,.desktop-nav-item.active{border-color:#ffb0004d;background:linear-gradient(135deg,#e3171f38,#ffb00014);color:#fff7ed}.desktop-logout{color:#fecaca}.desktop-logout span{background:#e3171f1f;color:#fecaca}.app-main{position:relative;height:calc(100vh - 50px);overflow-y:auto;background:radial-gradient(circle at 88% 0%,rgba(255,176,0,.09),transparent 30%),linear-gradient(180deg,#190604f5,#050302fa 46%)}.header{padding:18px 28px;border-bottom-color:#ffb00024;background:#080302c2}.header-row>.icon-button{display:none}.header-title{max-width:none;font-size:22px}.screen{width:100%;max-width:980px;margin:0 auto;padding:32px 40px 64px;gap:28px}.member-hero-card,.hero-card,.section-head,.content-card,.empty-card{border-radius:32px;padding:28px}.member-hero-card h1,.hero-card h1,.section-head h1{font-size:clamp(30px,3.2vw,48px)}.member-summary-table{grid-template-columns:repeat(3,minmax(0,1fr))}.stack{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.stack>h2,.stack>.empty-card,.stack>.section-head{grid-column:1 / -1}.category-card,.item-card,.bulletin-card,.event-card{min-height:124px;border-radius:26px;transition:transform .18s ease,border-color .18s ease,background .18s ease}.category-card:hover,.item-card:hover,.bulletin-card:hover,.event-card:hover{transform:translateY(-2px)}.card-row{align-items:flex-start}.card-icon{width:46px;height:46px;font-size:22px}.bottom-nav{display:none}.sync-pill{top:84px;left:calc(320px + (100vw - 320px)/2)}}@media(min-width:1200px){.screen{max-width:1060px}.stack{grid-template-columns:repeat(3,minmax(0,1fr))}}.signup-card{margin-top:16px;padding:16px;border:1px solid rgba(255,176,0,.24);border-radius:24px;background:#05030275;text-align:center;box-shadow:0 14px 30px #00000038}.signup-card p{margin:0 0 12px;color:#fff7ede6;font-size:14px;line-height:1.45}.signup-link{display:inline-flex;width:100%;min-height:46px;align-items:center;justify-content:center;padding:12px 16px;border:1px solid rgba(255,176,0,.42);border-radius:16px;background:linear-gradient(135deg,#ffb0002e,#64190fd1);color:#fff7ed;font-weight:800;letter-spacing:.01em}.signup-link:hover{filter:brightness(1.08);border-color:#ffc433c7}@media(min-width:960px){.signup-card{margin-top:18px}}:root{--web-gold: #c6a86a;--web-gold-soft: #f0d28b;--web-gold-bright: #d4b26a;--web-red: #7b1712;--web-red-strong: #b8261e;--web-bg: #050505;--web-panel: rgba(17, 17, 17, .86);--web-panel-2: rgba(20, 11, 8, .88);--web-border: rgba(198, 168, 106, .24);--web-border-strong: rgba(198, 168, 106, .46)}body{background:radial-gradient(circle at 10% 0%,rgba(198,168,106,.13),transparent 34%),radial-gradient(circle at 92% 10%,rgba(123,23,18,.18),transparent 32%),var(--web-bg)}.app-bg{position:relative;isolation:isolate;background:radial-gradient(circle at 50% -10%,rgba(198,168,106,.12),transparent 34%),linear-gradient(180deg,#110806,#050505 48%,#030303)}.app-bg:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:url(/brand/samurai-hero.jpg) center/cover no-repeat;opacity:.12;filter:grayscale(.15) brightness(.65);pointer-events:none}.app-bg:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,#000000a3,#000000eb);pointer-events:none}.phone-shell{border-color:var(--web-border);background:radial-gradient(circle at 84% 0%,rgba(198,168,106,.18),transparent 34%),linear-gradient(180deg,#160806fa,#050505fa 42%)}.web-header,.header,.bottom-nav{border-color:var(--web-border);background:#050505d1;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.header-icon,.icon-button,.login-logo,.loading-emblem{border:1px solid var(--web-border);background:radial-gradient(circle at 70% 0%,rgba(198,168,106,.34),transparent 44%),linear-gradient(135deg,#111111f2,#7b1712e0);box-shadow:0 16px 36px #00000047}.brand-header-icon,.web-brand-logo,.desktop-brand-logo{overflow:hidden;background:#050505a3}.brand-header-icon img,.web-brand-logo img,.desktop-brand-logo img{width:100%;height:100%;object-fit:contain;padding:5px;display:block}.web-login-screen{position:relative;padding:28px}.web-login-wrap{max-width:430px;margin:0 auto}.hero-tagline{margin:0 0 10px;color:var(--web-gold);font-size:11px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.web-login-brand h1{font-size:clamp(28px,9vw,40px);line-height:1.04;letter-spacing:-.04em}.web-login-brand p:not(.hero-tagline){margin-top:12px;color:#f5f5f5c2;line-height:1.5}.web-brand-logo{width:96px;height:96px;border-radius:999px;padding:7px}.web-login-card,.login-card,.signup-card,.hero-card,.section-head,.content-card,.empty-card,.category-card,.item-card,.bulletin-card,.event-card,.member-hero-card,.member-card-back,.recovery-card,.loading-card,.side-menu{border-color:var(--web-border);background:radial-gradient(circle at 88% 0%,rgba(198,168,106,.11),transparent 32%),linear-gradient(135deg,#140b08eb,#0b0b0be0);box-shadow:0 22px 60px #00000057}.web-login-note,.login-note{border:1px solid rgba(198,168,106,.18);background:#0000005c;color:#f5f5f5d1}.login-card label,.eyebrow,.member-summary-table span,.member-card-back-grid span,.category-label,.bulletin-head span,.event-card-head span,.loading-title{color:var(--web-gold-soft)}.login-card input{border-color:#c6a86a33;background:#050505ad}.login-card input:focus{border-color:var(--web-border-strong);box-shadow:0 0 0 3px #c6a86a1f}.login-card button,.primary-button,.primary-link,.signup-link,.bottom-nav-button.active{border:1px solid rgba(198,168,106,.36);background:linear-gradient(135deg,#b58a3c,#7b1712 72%);color:#fffaf0;box-shadow:0 14px 34px #0000003d}.login-card button:hover,.primary-button:hover,.primary-link:hover,.signup-link:hover{filter:brightness(1.08);transform:translateY(-1px)}.secondary-button,.icon-button,.menu-item,.bottom-nav-button{border-color:#c6a86a2e}.member-hero-card,.hero-card{background:radial-gradient(circle at 84% 0%,rgba(198,168,106,.24),transparent 30%),linear-gradient(135deg,#140b08,#0b0b0b 62%,#1a0808)}.member-summary-table div,.tag-list span,.member-card-back-grid div{border-color:#c6a86a2e;background:#05050561}.card-icon,.desktop-nav-item span{background:#c6a86a1f;color:var(--web-gold-soft)}.category-card:hover,.item-card:hover,.quick-card:hover,.desktop-nav-item:hover,.desktop-nav-item.active{border-color:var(--web-border-strong);background:radial-gradient(circle at 88% 0%,rgba(198,168,106,.16),transparent 32%),linear-gradient(135deg,#b58a3c24,#7b17123d)}.signup-card.web-signup-card{background:radial-gradient(circle at 78% 0%,rgba(198,168,106,.16),transparent 36%),linear-gradient(135deg,#111111c2,#140806e0)}.kanji{color:#c6a86aad;letter-spacing:.18em}@media(min-width:960px){.app-bg{padding:24px}.phone-shell{max-width:1400px;border-color:#c6a86a47;background:linear-gradient(135deg,#050505f0,#0c0604f5),var(--web-bg)}.app-frame{grid-template-columns:335px minmax(0,1fr)}.desktop-sidebar{border-right-color:var(--web-border);background:linear-gradient(180deg,#0000002e,#000000d6),url(/brand/samurai-hero.jpg) center/cover no-repeat}.desktop-sidebar:before{content:"";position:absolute}.desktop-brand-card,.desktop-member-card{border-color:#c6a86a47;background:#050505b3;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.desktop-brand-logo{width:64px;height:64px;border-radius:999px}.desktop-brand-card h1{font-size:26px}.desktop-brand-subtitle,.desktop-member-meta span,.desktop-role-line,.muted,.small{color:#f5f5f5b8}.desktop-nav-item{border-color:#c6a86a14;background:#05050538}.app-main{background:radial-gradient(circle at 88% 0%,rgba(198,168,106,.11),transparent 30%),radial-gradient(circle at 8% 12%,rgba(123,23,18,.18),transparent 34%),linear-gradient(180deg,#0c0604f0,#050505fa 46%)}.screen{max-width:1060px;padding-top:42px}.view-container:before{content:"Minami no Saien no Bugeisha";display:block;max-width:1060px;margin:30px auto 0;padding:0 40px;color:#c6a86a9e;font-size:12px;font-weight:800;letter-spacing:.22em;text-transform:uppercase}.web-login-screen{min-height:calc(100vh - 48px);background:linear-gradient(90deg,#000000c7,#00000075),url(/brand/samurai-hero.jpg) center/cover no-repeat}.web-login-wrap{max-width:520px;margin-left:min(7vw,90px);margin-right:auto}.web-login-brand{text-align:left}.web-brand-logo{margin-left:0}.web-login-brand h1{max-width:520px}.web-login-card,.web-signup-card{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}@media(max-width:959px){.app-bg:before{opacity:.07}.web-login-screen{background:radial-gradient(circle at 50% 0%,rgba(198,168,106,.14),transparent 34%),linear-gradient(180deg,#140806eb,#050505fa)}.web-login-brand h1{font-size:32px}}:root{--photo-overlay-a: rgba(5, 5, 5, .86);--photo-overlay-b: rgba(52, 12, 9, .72);--photo-overlay-c: rgba(5, 5, 5, .58);--photo-gold-glow: rgba(198, 168, 106, .16)}.app-bg:before{background-image:url(/brand/photos/visual-login.webp);opacity:.105;filter:grayscale(.08) saturate(.88) brightness(.58) contrast(1.08)}.web-login-screen{overflow:hidden}.web-login-screen:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:linear-gradient(90deg,#000000d6,#1608069e,#000000bd),url(/brand/photos/visual-login.webp) center/cover no-repeat;filter:saturate(.9) brightness(.78) contrast(1.06)}.web-login-screen:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(circle at 18% 18%,rgba(198,168,106,.18),transparent 34%),linear-gradient(180deg,#00000038,#000000b8);pointer-events:none}.web-login-wrap{position:relative;z-index:1}.visual-card{position:relative;overflow:hidden;isolation:isolate;border-color:var(--web-border);background:linear-gradient(135deg,#140b08eb,#050505e0)}.visual-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-2;background-image:var(--visual-image);background-position:center;background-size:cover;background-repeat:no-repeat;opacity:.58;filter:grayscale(.08) saturate(.86) brightness(.54) contrast(1.08);transform:scale(1.025)}.visual-card:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:radial-gradient(circle at 86% 0%,var(--photo-gold-glow),transparent 32%),linear-gradient(135deg,var(--photo-overlay-a),var(--photo-overlay-b) 58%,var(--photo-overlay-c))}.visual-card-content{position:relative;z-index:1}.visual-label{color:var(--web-gold-soft)!important;letter-spacing:.13em;text-transform:uppercase;font-weight:900}.visual-hero-card,.section-visual-head,.detail-visual-hero{min-height:218px;display:grid;align-content:end}.member-home-hero{min-height:255px}.member-home-hero h1,.section-visual-head h1,.detail-visual-hero h1{text-shadow:0 3px 18px rgba(0,0,0,.58)}.member-home-hero .member-summary-table,.detail-visual-hero p,.section-visual-head p{max-width:760px}.category-visual-card,.item-visual-card,.bulletin-visual-card,.event-visual-card{min-height:154px}.category-visual-card:before,.item-visual-card:before,.bulletin-visual-card:before,.event-visual-card:before{opacity:.45;filter:grayscale(.05) saturate(.74) brightness(.5) contrast(1.08)}.category-visual-card:hover:before,.item-visual-card:hover:before,.bulletin-visual-card:hover:before,.event-visual-card:hover:before,.home-photo-tile:hover:before{opacity:.62;transform:scale(1.055);transition:transform .42s ease,opacity .24s ease}.category-visual-card .card-row,.item-visual-card .card-row{height:100%;align-items:flex-end}.category-visual-card h3,.item-visual-card h3,.bulletin-visual-card h3,.event-visual-card h3,.home-photo-tile strong{color:#fffaf0;text-shadow:0 2px 14px rgba(0,0,0,.62)}.category-visual-card .muted,.item-visual-card .muted,.bulletin-visual-card .bulletin-meta-line,.event-visual-card span{color:#fffaf0d1}.home-photo-row{display:grid;grid-template-columns:1fr;gap:12px}.home-photo-tile{min-height:118px;border:1px solid var(--web-border);border-radius:26px;padding:16px;display:grid;align-content:end;box-shadow:0 18px 42px #00000047}.home-photo-tile span{color:var(--web-gold-soft);font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:900}.home-photo-tile strong{display:block;margin-top:4px;font-size:16px;line-height:1.18}.visual-tone-ryuha:after{background:radial-gradient(circle at 82% 0%,rgba(198,168,106,.15),transparent 30%),linear-gradient(135deg,#040404e0,#2c0a08c7 54%,#050505a8)}.visual-tone-bunka:after{background:radial-gradient(circle at 80% 0%,rgba(198,168,106,.2),transparent 34%),linear-gradient(135deg,#050505db,#4a140eb3 58%,#0505059e)}.visual-tone-enbu:after{background:radial-gradient(circle at 78% 0%,rgba(198,168,106,.18),transparent 32%),linear-gradient(135deg,#000000db,#250706b8 55%,#000000ad)}.visual-tone-events:after,.visual-tone-news:after{background:radial-gradient(circle at 86% 0%,rgba(198,168,106,.16),transparent 32%),linear-gradient(135deg,#000000d6,#430f0bb8 60%,#050505a3)}.visual-tone-study:after,.visual-tone-community:after{background:radial-gradient(circle at 82% 0%,rgba(198,168,106,.18),transparent 34%),linear-gradient(135deg,#050505e0,#220e08bd 56%,#050505a3)}.bulletin-visual-card,.event-visual-card{text-align:left}.event-visual-card .primary-link,.bulletin-visual-card .bulletin-meta-line{position:relative;z-index:2}.web-login-card,.web-signup-card,.desktop-brand-card,.desktop-member-card,.content-card,.login-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@media(min-width:720px){.home-photo-row{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:960px){.desktop-sidebar{position:sticky;background:linear-gradient(180deg,#0000007a,#130805e0),url(/brand/photos/visual-sidebar.webp) center/cover no-repeat}.web-login-screen{background:none}.web-login-screen:before{background:linear-gradient(90deg,#000000e0,#1408068f,#0000008a),url(/brand/photos/visual-login.webp) center/cover no-repeat}.visual-hero-card,.section-visual-head,.detail-visual-hero{min-height:295px}.member-home-hero{min-height:340px}.category-visual-card,.item-visual-card{min-height:210px}.event-visual-card,.bulletin-visual-card{min-height:190px}.home-photo-tile{min-height:168px}.category-visual-card:before,.item-visual-card:before,.bulletin-visual-card:before,.event-visual-card:before{opacity:.5}.member-summary-table div{background:#00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}}@media(max-width:420px){.visual-hero-card,.section-visual-head,.detail-visual-hero{min-height:205px}.member-home-hero{min-height:242px}.category-visual-card,.item-visual-card{min-height:150px}}.visual-logo-badge{position:absolute;top:14px;right:14px;z-index:2;width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#080808b8;border:1px solid rgba(198,168,106,.42);box-shadow:0 10px 28px #00000052;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.visual-logo-badge img{width:100%;height:100%;object-fit:contain;padding:7px;display:block}.home-photo-tile,.category-visual-card,.item-visual-card,.bulletin-visual-card,.event-visual-card,.section-visual-head,.detail-visual-hero{overflow:hidden}
