:root{--banner-blue: #0c5be3;--bg-gradient: linear-gradient(180deg, #0c5be3 0%, #0c5be3 200px, #e8f0fe 550px, #ffffff 100%);--brand-blue: #0c5be3;--accent-green: #00c853;--text-main: #0f172a;--text-muted: #64748b;--shadow-light: 0 20px 50px rgba(0, 0, 0, .12);--shadow-hover: 0 25px 60px rgba(0, 0, 0, .18);--font-family: "Noto Sans SC", system-ui, -apple-system, BlinkMacSystemFont, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;font-family:var(--font-family);background:var(--bg-gradient);background-attachment:fixed;color:var(--text-main);line-height:1.4;-webkit-font-smoothing:antialiased}.app-wrapper{position:relative;width:100%;height:100vh;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.main{position:relative;z-index:1;flex:1;display:flex;align-items:center;justify-content:center;padding:0 1rem .6rem;min-height:0}.poster-container{width:100%;height:100%;max-width:1400px;display:flex;align-items:center;justify-content:center;min-height:0}.view-card{width:100%;height:100%;display:flex;align-items:center;justify-content:center;min-height:0}.card-frame{height:100%;max-height:calc(100vh - 40px);width:auto;max-width:100%;border-radius:16px;overflow:hidden;box-shadow:var(--shadow-light);border:none!important;background:#0c5be3;transition:all .35s cubic-bezier(.16,1,.3,1);display:flex;align-items:center;justify-content:center}.card-frame:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.poster-img{max-height:calc(100vh - 40px);width:auto;max-width:100%;object-fit:contain;display:block;border:none!important}.poster-img-mobile{width:100%;max-width:480px;height:auto;display:block;border-radius:14px;border:none!important;box-shadow:0 12px 35px #00000026}.card-pc{display:flex}.card-mobile{display:none}@media (max-width: 768px){html,body{height:auto;overflow-y:auto}.app-wrapper{height:auto;min-height:100vh;overflow-y:auto}.main{padding:.5rem;height:auto;min-height:auto}.poster-container{height:auto}.card-pc{display:none!important}.card-mobile{display:flex!important;width:100%;height:auto;justify-content:center}.poster-img-mobile{width:100%;max-width:480px;height:auto;display:block;margin:0 auto}}.footer{position:relative;z-index:10;flex-shrink:0;text-align:center;padding:.4rem 1rem;font-size:.75rem;color:var(--text-muted);border:none!important;background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
