:root{font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,ヒラギノ角ゴ ProN W3,Meiryo,メイリオ,Osaka,MS PGothic,arial,helvetica,sans-serif;line-height:1.6;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--kaiso-brand-primary: #1E88E5;--kaiso-brand-secondary: #43A047;--kaiso-brand-accent: #FF7043;--kaiso-brand-deep: #1565C0;--kaiso-info: #2196F3;--kaiso-success: #4CAF50;--kaiso-warning: #FF9800;--kaiso-error: #F44336;--kaiso-neutral: #607D8B;--color-bg: #FAFAFA;--color-surface: #FFFFFF;--color-surface-elevated: #F5F5F5;--color-text-primary: #212121;--color-text-secondary: #616161;--color-text-tertiary: #9E9E9E;--color-primary-btn-bg: var(--kaiso-brand-primary);--color-primary-btn-text: #FFFFFF;--color-secondary-btn-bg: #F5F5F5;--color-secondary-btn-text: var(--color-text-primary);--color-accent: var(--kaiso-brand-accent);--color-border: #E0E0E0;--color-border-focus: var(--kaiso-brand-primary);--kaiso-focus-ring: 4px solid var(--kaiso-brand-primary);--kaiso-focus-ring-offset: 2px;--color-error: var(--kaiso-error);--color-success: var(--kaiso-success);--color-warning: var(--kaiso-warning);--color-info: var(--kaiso-info);--kaiso-primary: #0066D9;--kaiso-secondary: #0066D9;--kaiso-accent: #208A3C;--kaiso-warning: #D92C2C;--kaiso-error: #D92C2C;--kaiso-success: #208A3C;--kaiso-info: #0066D9;--kaiso-background: #FFFFFF;--kaiso-surface: #F7F7F8;--kaiso-surface-elevated: #E9E9EC;--kaiso-surface-disabled: #D1D1D6;--kaiso-card: #F7F7F8;--kaiso-text-primary: #212124;--kaiso-text-secondary: #5A5A5F;--kaiso-text-tertiary: #5A5A5F;--kaiso-text-disabled: #5A5A5F;--kaiso-on-primary: #FFFFFF;--kaiso-on-secondary: #212124;--kaiso-on-surface: #212124;--kaiso-on-error: #FFFFFF;--kaiso-on-success: #FFFFFF;--kaiso-border: #D1D1D6;--kaiso-border-hover: #5A5A5F;--kaiso-shadow: rgba(33, 33, 36, .1);--kaiso-shadow-hover: rgba(33, 33, 36, .15);--kaiso-primary-alpha: rgba(0, 102, 217, .2);--kaiso-primary-opacity: rgba(0, 102, 217, .2);--kaiso-primary-hover: #0052B4;--kaiso-button-secondary: #E9E9EC;--kaiso-button-secondary-hover: #D1D1D6;--kaiso-text-button: #FFFFFF;--kaiso-hover: rgba(0, 102, 217, .1);--kaiso-bg-primary: #FFFFFF;--kaiso-bg-secondary: #F7F7F8;--kaiso-input-bg: #FFFFFF;--kaiso-tag-bg: #E9E9EC;--kaiso-tag-text: #0066D9;--kaiso-warning-bg: #FFF3F3;--kaiso-error-bg: #FFF3F3;--kaiso-info-bg: #F0F8FF;--kaiso-like-button: #208A3C;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-xxl: 48px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-xxl: 16px;--radius-round: 50%;--shadow-sm: 0 1px 3px rgba(0,0,0,.1);--shadow-md: 0 2px 8px rgba(0,0,0,.1);--shadow-lg: 0 4px 12px rgba(0,0,0,.1);--shadow-xl: 0 4px 16px rgba(0,0,0,.15);--shadow-xxl: 0 8px 24px rgba(0,0,0,.2);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--transition-bounce: .3s cubic-bezier(.68, -.55, .265, 1.55);--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--button-height-sm: 40px;--button-height-md: 48px;--button-height-lg: 56px;--button-height-xl: 64px;--gradient-primary: linear-gradient(135deg, #48CAE4, #2E86AB);--gradient-secondary: linear-gradient(135deg, #2E86AB, #1B5E7F);--gradient-accent: linear-gradient(135deg, #6C5CE7, #A29BFE);--gradient-success: linear-gradient(135deg, #4CAF50, #388E3C);--gradient-warning: linear-gradient(135deg, #FF9800, #F57C00);--gradient-error: linear-gradient(135deg, #F44336, #D32F2F);--color-play-bg: #4CAF50;--color-play-hover: #45A049;--color-play-text: #FFFFFF;--gradient-play: linear-gradient(135deg, #4CAF50, #388E3C);--gradient-play-hover: linear-gradient(135deg, #45A049, #2E7D32);--color-nav-bg: #2196F3;--color-nav-hover: #1976D2;--color-nav-text: #FFFFFF;--gradient-nav: linear-gradient(135deg, #2196F3, #1976D2);--gradient-nav-hover: linear-gradient(135deg, #1976D2, #1565C0);--color-info-bg: #607D8B;--color-info-hover: #546E7A;--color-info-text: #FFFFFF;--gradient-info: linear-gradient(135deg, #607D8B, #546E7A);--gradient-info-hover: linear-gradient(135deg, #546E7A, #455A64);--color-create-bg: #9C27B0;--color-create-hover: #8E24AA;--color-create-text: #FFFFFF;--gradient-create: linear-gradient(135deg, #9C27B0, #8E24AA);--gradient-create-hover: linear-gradient(135deg, #8E24AA, #7B1FA2);--color-manage-bg: #FF9800;--color-manage-hover: #F57C00;--color-manage-text: #FFFFFF;--gradient-manage: linear-gradient(135deg, #FF9800, #F57C00);--gradient-manage-hover: linear-gradient(135deg, #F57C00, #E65100);--color-danger-bg: #F44336;--color-danger-hover: #E53935;--color-danger-text: #FFFFFF;--gradient-danger: linear-gradient(135deg, #F44336, #E53935);--gradient-danger-hover: linear-gradient(135deg, #E53935, #D32F2F);--kaiso-dislike-button: #D92C2C;--kaiso-font-small: .875rem;--kaiso-font-medium: 1rem;--kaiso-font-large: 1.125rem;--kaiso-font-extra-large: 1.25rem;--kaiso-font-huge: 1.5rem;--kaiso-breakpoint-xs: 320px;--kaiso-breakpoint-sm: 480px;--kaiso-breakpoint-md: 640px;--kaiso-breakpoint-lg: 768px;--kaiso-breakpoint-xl: 1024px;--kaiso-button-size-mobile: 120px;--kaiso-button-size-tablet: 140px;--kaiso-button-size-desktop: 160px;--kaiso-font-size-mobile: 18px;--kaiso-font-size-tablet: 20px;--kaiso-font-size-desktop: 24px;--kaiso-spacing-xs: 4px;--kaiso-spacing-sm: 8px;--kaiso-spacing-md: 16px;--kaiso-spacing-lg: 24px;--kaiso-spacing-xl: 32px;--kaiso-transition-fast: .15s ease;--kaiso-transition-medium: .3s ease;--kaiso-transition-slow: .5s ease;--kaiso-font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", Osaka, "MS PGothic", arial, helvetica, sans-serif;--kaiso-line-height-base: 1.6;--kaiso-line-height-heading: 1.4;--kaiso-line-height-tight: 1.2;--kaiso-font-h1: 3rem;--kaiso-font-h2: 2.5rem;--kaiso-font-h3: 2rem;--kaiso-font-h4: 1.5rem;--kaiso-font-h5: 1.25rem;--kaiso-font-h6: 1.125rem;--kaiso-font-body-large: 1.125rem;--kaiso-font-body: 1rem;--kaiso-font-body-small: .875rem;--kaiso-font-caption: .75rem;--kaiso-font-button-large: 1.25rem;--kaiso-font-button: 1rem;--kaiso-font-button-small: .875rem;--kaiso-font-weight-light: 300;--kaiso-font-weight-normal: 400;--kaiso-font-weight-medium: 500;--kaiso-font-weight-semibold: 600;--kaiso-font-weight-bold: 700;--kaiso-font-weight-extrabold: 800;--kaiso-grid-columns: 12;--kaiso-grid-gap: 20px;--kaiso-grid-gap-small: 16px;--kaiso-grid-gap-large: 24px;--kaiso-container-max-width: 1200px;--kaiso-container-padding: 20px;--kaiso-container-padding-mobile: 16px;--kaiso-card-border-radius: 12px;--kaiso-card-padding: 24px;--kaiso-card-padding-small: 16px;--kaiso-card-shadow: 0 4px 12px rgba(0, 0, 0, .1);--kaiso-card-shadow-hover: 0 8px 24px rgba(0, 0, 0, .15);--kaiso-card-border: 1px solid var(--color-border);--kaiso-button-circle-size: 120px;--kaiso-button-rect-width: 450px;--kaiso-button-rect-height: 120px;color-scheme:light dark;color:var(--kaiso-text-primary);background-color:var(--kaiso-background)}[data-theme=dark]{--color-bg: #0F0F10;--color-surface: #1A1A1D;--color-text-primary: #F2F2F3;--color-text-secondary: #B5B5B8;--color-primary-btn-bg: #2985FF;--color-primary-btn-text: #FFFFFF;--color-secondary-btn-bg: #2C2C2F;--color-secondary-btn-text: #F2F2F3;--color-accent: #4C9BFF;--color-border: #3A3A3D;--color-error: #FF5B5B;--color-success: #3ECF5E;--kaiso-primary: #2985FF;--kaiso-secondary: #4C9BFF;--kaiso-accent: #3ECF5E;--kaiso-warning: #FF5B5B;--kaiso-error: #FF5B5B;--kaiso-success: #3ECF5E;--kaiso-info: #4C9BFF;--kaiso-background: #0F0F10;--kaiso-surface: #1A1A1D;--kaiso-surface-elevated: #2C2C2F;--kaiso-surface-disabled: #3A3A3D;--kaiso-card: #1A1A1D;--kaiso-text-primary: #F2F2F3;--kaiso-text-secondary: #B5B5B8;--kaiso-text-tertiary: #B5B5B8;--kaiso-text-disabled: #B5B5B8;--kaiso-on-primary: #FFFFFF;--kaiso-on-secondary: #F2F2F3;--kaiso-on-surface: #F2F2F3;--kaiso-on-error: #FFFFFF;--kaiso-on-success: #FFFFFF;--kaiso-border: #3A3A3D;--kaiso-border-hover: #B5B5B8;--kaiso-shadow: rgba(15, 15, 16, .6);--kaiso-shadow-hover: rgba(15, 15, 16, .8);--kaiso-primary-alpha: rgba(41, 133, 255, .2);--kaiso-primary-opacity: rgba(41, 133, 255, .2);--kaiso-primary-hover: #1F73E6;--kaiso-button-secondary: #2C2C2F;--kaiso-button-secondary-hover: #3A3A3D;--kaiso-text-button: #FFFFFF;--kaiso-hover: rgba(41, 133, 255, .1);--kaiso-bg-primary: #0F0F10;--kaiso-bg-secondary: #1A1A1D;--kaiso-input-bg: #2C2C2F;--kaiso-tag-bg: #2C2C2F;--kaiso-tag-text: #4C9BFF;--kaiso-warning-bg: #2A1A1A;--kaiso-error-bg: #2A1A1A;--kaiso-info-bg: #1A1A1D;--kaiso-like-button: #3ECF5E;--kaiso-dislike-button: #FF5B5B;color:var(--kaiso-text-primary);background-color:var(--kaiso-background)}[data-theme=high-contrast]{--color-bg: #000000;--color-surface: #000000;--color-text-primary: #FFFFFF;--color-text-secondary: #FFFFFF;--color-primary-btn-bg: #FFD700;--color-primary-btn-text: #000000;--color-secondary-btn-bg: #FFFFFF;--color-secondary-btn-text: #000000;--color-accent: #00FFFF;--color-border: #FFFFFF;--color-error: #FF0000;--color-success: #00FF00;--kaiso-primary: #FFD700;--kaiso-secondary: #00FFFF;--kaiso-accent: #00FF00;--kaiso-warning: #FF0000;--kaiso-error: #FF0000;--kaiso-success: #00FF00;--kaiso-info: #00FFFF;--kaiso-background: #000000;--kaiso-surface: #000000;--kaiso-surface-elevated: #111111;--kaiso-surface-disabled: #333333;--kaiso-card: #000000;--kaiso-text-primary: #FFFFFF;--kaiso-text-secondary: #FFFFFF;--kaiso-text-tertiary: #FFFFFF;--kaiso-text-disabled: #CCCCCC;--kaiso-on-primary: #000000;--kaiso-on-secondary: #000000;--kaiso-on-surface: #FFFFFF;--kaiso-on-error: #FFFFFF;--kaiso-on-success: #000000;--kaiso-border: #FFFFFF;--kaiso-border-hover: #FFFFFF;--kaiso-shadow: rgba(255, 255, 255, .3);--kaiso-shadow-hover: rgba(255, 255, 255, .5);--kaiso-primary-alpha: rgba(255, 215, 0, .2);--kaiso-primary-opacity: rgba(255, 215, 0, .2);--kaiso-primary-hover: #FFED4E;--kaiso-button-secondary: #FFFFFF;--kaiso-button-secondary-hover: #CCCCCC;--kaiso-text-button: #000000;--kaiso-hover: rgba(255, 215, 0, .1);--kaiso-bg-primary: #000000;--kaiso-bg-secondary: #000000;--kaiso-input-bg: #111111;--kaiso-tag-bg: #333333;--kaiso-tag-text: #00FFFF;--kaiso-warning-bg: #333333;--kaiso-error-bg: #333333;--kaiso-info-bg: #111111;--kaiso-like-button: #00FF00;--kaiso-dislike-button: #FF0000;color:var(--kaiso-text-primary);background-color:var(--kaiso-background)}*{color:inherit}html,body{background-color:var(--kaiso-background);color:var(--kaiso-text-primary);font-family:var(--kaiso-font-family);line-height:var(--kaiso-line-height-base);margin:0;padding:0;font-size:16px}h1,h2,h3,h4,h5,h6{font-family:var(--kaiso-font-family);line-height:var(--kaiso-line-height-heading);color:var(--color-text-primary);margin:0 0 1rem;font-weight:var(--kaiso-font-weight-bold)}h1{font-size:var(--kaiso-font-h1);font-weight:var(--kaiso-font-weight-extrabold)}h2{font-size:var(--kaiso-font-h2);font-weight:var(--kaiso-font-weight-bold)}h3{font-size:var(--kaiso-font-h3);font-weight:var(--kaiso-font-weight-bold)}h4{font-size:var(--kaiso-font-h4);font-weight:var(--kaiso-font-weight-semibold)}h5{font-size:var(--kaiso-font-h5);font-weight:var(--kaiso-font-weight-semibold)}h6{font-size:var(--kaiso-font-h6);font-weight:var(--kaiso-font-weight-medium)}p{font-size:var(--kaiso-font-body);line-height:var(--kaiso-line-height-base);color:var(--color-text-primary);margin:0 0 1rem}small{font-size:var(--kaiso-font-body-small);color:var(--color-text-secondary)}input,textarea,select{background-color:var(--color-surface);color:var(--color-text-primary);border:2px solid var(--color-border);border-radius:8px;padding:12px 16px;font-size:var(--kaiso-font-body);font-family:var(--kaiso-font-family);line-height:var(--kaiso-line-height-base);transition:all var(--kaiso-transition-medium);width:100%;box-sizing:border-box}input:focus,textarea:focus,select:focus{outline:var(--kaiso-focus-ring)!important;outline-offset:var(--kaiso-focus-ring-offset)!important;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #1e88e533;transform:translateY(-1px)}input::placeholder,textarea::placeholder{color:#616161!important;font-style:italic;opacity:1!important}input:focus::placeholder,textarea:focus::placeholder{color:#9e9e9e!important}input:disabled,textarea:disabled,select:disabled{background-color:var(--color-surface-elevated);color:var(--color-text-tertiary);border-color:var(--color-border);opacity:.6;cursor:not-allowed}input.error,textarea.error,select.error{border-color:var(--color-error);background-color:#f443360d}input.valid,textarea.valid,select.valid{border-color:var(--color-success);background-color:#4caf500d}button{background-color:var(--color-primary-btn-bg);color:var(--color-primary-btn-text);border:none;border-radius:8px;padding:12px 24px;font-size:var(--kaiso-font-button);font-family:var(--kaiso-font-family);font-weight:var(--kaiso-font-weight-semibold);line-height:var(--kaiso-line-height-tight);cursor:pointer;transition:all var(--kaiso-transition-medium);display:inline-flex;align-items:center;justify-content:center;min-height:44px;text-decoration:none;box-sizing:border-box}button:hover:not(:disabled){background-color:var(--kaiso-brand-deep);transform:translateY(-2px);box-shadow:var(--kaiso-card-shadow)}button:active:not(:disabled){transform:translateY(0);box-shadow:none}button:focus{outline:var(--kaiso-focus-ring)!important;outline-offset:var(--kaiso-focus-ring-offset)!important}button:disabled{background-color:var(--color-text-tertiary);color:var(--color-surface);cursor:not-allowed;transform:none;opacity:.6}a{color:var(--kaiso-primary);text-decoration:none;transition:color var(--kaiso-transition-fast)}a:hover{color:var(--kaiso-secondary);text-decoration:underline}table{background-color:var(--kaiso-surface);color:var(--kaiso-text-primary);border-collapse:collapse;width:100%}th,td{border:1px solid var(--kaiso-border);padding:12px;text-align:left}th{background-color:var(--kaiso-primary);color:#fff;font-weight:600}tr:nth-child(2n){background-color:var(--kaiso-surface-elevated)}.card,.panel{background-color:var(--color-surface);color:var(--color-text-primary);border:var(--kaiso-card-border);border-radius:var(--kaiso-card-border-radius);padding:var(--kaiso-card-padding);box-shadow:var(--kaiso-card-shadow);transition:all var(--kaiso-transition-medium);position:relative;overflow:hidden}.card:hover,.panel:hover{box-shadow:var(--kaiso-card-shadow-hover);transform:translateY(-2px);border-color:var(--color-border-focus)}.card-small{padding:var(--kaiso-card-padding-small);border-radius:8px}.card-elevated{background-color:var(--color-surface-elevated);box-shadow:0 8px 24px #0000001f}.card-interactive{cursor:pointer;transition:all var(--kaiso-transition-fast)}.card-interactive:hover{transform:translateY(-4px);box-shadow:0 12px 32px #0000002e}.card-interactive:active{transform:translateY(-1px)}.card-header{margin-bottom:var(--kaiso-spacing-md);padding-bottom:var(--kaiso-spacing-sm);border-bottom:1px solid var(--color-border)}.card-title{font-size:var(--kaiso-font-h5);font-weight:var(--kaiso-font-weight-bold);color:var(--color-text-primary);margin:0}.card-subtitle{font-size:var(--kaiso-font-body-small);color:var(--color-text-secondary);margin:var(--kaiso-spacing-xs) 0 0 0}.card-body{font-size:var(--kaiso-font-body);line-height:var(--kaiso-line-height-base);color:var(--color-text-primary)}.card-footer{margin-top:var(--kaiso-spacing-md);padding-top:var(--kaiso-spacing-sm);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.kaiso-circle-button{width:var(--kaiso-button-circle-size);height:var(--kaiso-button-circle-size);border-radius:50%;border:none;cursor:pointer;font-size:var(--kaiso-font-huge);font-weight:700;color:#fff;display:flex;align-items:center;justify-content:center;position:relative;transition:all var(--kaiso-transition-medium);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;box-shadow:0 8px #0000004d,0 4px 15px #0003}.kaiso-circle-button:active{transform:translateY(4px);box-shadow:0 4px #0000004d,0 2px 10px #0003}.kaiso-circle-button:hover:not(:active){transform:translateY(-2px);box-shadow:0 10px #0000004d,0 6px 20px #00000040}.kaiso-like-button{background:linear-gradient(135deg,var(--kaiso-like-button),#D67C3E)}.kaiso-like-button:before{content:"♥";font-size:1.2em;margin-right:8px}.kaiso-dislike-button{background:linear-gradient(135deg,var(--kaiso-dislike-button),#9C403D)}.kaiso-dislike-button:before{content:"×";font-size:1.4em;margin-right:8px}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:var(--kaiso-background)}a:hover{color:#747bff}button{background-color:var(--kaiso-surface)}}.center-card-container{display:flex;align-items:center;justify-content:center;width:100%;min-height:100vh;padding:1rem;box-sizing:border-box;background-color:var(--color-bg)!important}.card{background-color:var(--color-surface)!important;color:var(--color-text-primary)!important;border:1px solid var(--color-border)!important;border-radius:var(--border-radius-lg);padding:var(--space-md);display:flex;flex-direction:column;align-items:center;width:90vw;max-width:420px;min-width:280px;box-shadow:var(--shadow-lg);text-align:center}.promo-image{width:100%;height:auto;object-fit:contain;background-color:#fff!important;padding:20px;border-radius:8px}.login-button{margin-top:16px;width:100%;max-width:260px;background-color:transparent;border:none;padding:0}.login-button img{width:100%;height:auto;display:block}@media (prefers-color-scheme: dark){.center-card-container{background-color:#242424}.card{background-color:#333;color:#ffffffde}}.playlist-wrapper{max-width:640px;margin:0 auto;padding:16px 12px 90px;box-sizing:border-box}.playlist-heading{text-align:center;font-size:1.6rem;font-weight:700;margin-bottom:12px}.song-card{display:flex;gap:12px;background:#fff;border-radius:12px;box-shadow:0 2px 6px #00000024;padding:12px;margin-bottom:14px;cursor:pointer;transition:transform .13s ease}.song-card:active{transform:scale(.97)}.song-card img{width:68px;height:68px;object-fit:cover;border-radius:8px;flex-shrink:0}.song-info{flex:1;min-width:0}.song-info .title{font-size:1.05rem;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.song-info .artist{font-size:.9rem;color:#444;margin-top:2px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.song-info .meta{font-size:.8rem;color:#666;margin-top:4px;display:flex;flex-wrap:wrap;gap:4px 8px}.pl-root{padding:16px;font-size:15px}.pl-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.pl-header h2{margin:0;font-size:20px}.pl-header button{background:#0191c1;color:#fff;border:none;border-radius:6px;padding:6px 12px;cursor:pointer}.pl-row{display:grid;grid-template-columns:2fr 2fr 1fr 3fr 1fr;list-style:none;margin:0;padding:6px 0;border-bottom:1px solid #ddd}.pl-row li{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pl-head{font-weight:700;background:#f5f5f5}.pl-head li{border-bottom:none}.pl-root{padding:24px;font-family:Noto Sans JP,sans-serif}.pl-title{text-align:center;font-size:40px;margin:0 0 24px}.pl-back{position:fixed;top:20px;left:20px;background:#0191c1;color:#fff;border:none;border-radius:50%;width:90px;height:90px;font-size:18px;cursor:pointer}.pl-grid{display:grid;grid-template-columns:120px 1fr 1fr 120px 120px}.pl-head{font-weight:700;background:#e5e5e5}.pl-grid>div{border:1px solid #34434b;display:flex;justify-content:center;align-items:center;padding:8px;text-align:center}.pl-thumb{width:100px;height:100px;object-fit:cover}.lp-wrapper{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;justify-content:center;align-items:center;background:#e5e5e5;overflow:hidden}.lp-card{background:#3f3f3f;color:#fff;border-radius:24px;padding:5vh 6vw 7vh;width:90vw;max-width:640px;box-sizing:border-box;display:flex;flex-direction:column;align-items:center}.lp-back{position:absolute;top:36px;left:36px;width:110px;height:110px;cursor:pointer;-webkit-user-select:none;user-select:none}.lp-label{font-size:2.4rem;font-weight:700;margin:28px 0 16px;align-self:flex-start;text-align:left;width:100%}.lp-input{width:100%;height:64px;font-size:2.2rem;border-radius:8px;border:none;padding:0 18px;box-sizing:border-box}.lp-forgot{align-self:flex-end;margin:20px 0 42px;font-size:1.6rem;color:#fff;text-decoration:underline}.lp-submit{width:320px;max-width:80%;height:74px;border:none;border-radius:8px;background:#d24800;color:#fff;font-size:2.2rem;font-weight:700;cursor:pointer;box-shadow:0 6px #00000059;transition:opacity .2s}.lp-submit:hover{opacity:.85}.main-wrapper{position:relative;display:flex;flex-direction:column;align-items:center;padding:48px 16px 32px;min-height:100vh;box-sizing:border-box;background:var(--kaiso-background);color:var(--kaiso-text-primary);font-family:Noto Sans JP,sans-serif}.main-back-btn{position:absolute;left:32px;top:32px;width:110px;height:110px;background:url(/static/assets/modoru.png) center/contain no-repeat;cursor:pointer;z-index:9999}.main-edit-btn{position:absolute;right:var(--space-xl);top:var(--space-xl);width:170px;height:170px;border-radius:50%;background:var(--gradient-secondary)!important;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#fff!important;font-size:42px;font-weight:var(--font-weight-bold);line-height:1.25;text-align:center;cursor:pointer;border:none;box-shadow:var(--shadow-lg);transition:var(--transition-medium)}.main-edit-btn:hover{background:var(--gradient-secondary-hover)!important;transform:translateY(-2px);box-shadow:var(--shadow-xl)}.main-admin-btn{position:absolute;right:220px;top:32px;width:170px;height:170px;border-radius:50%;background:var(--color-accent)!important;display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-primary-btn-text)!important;font-size:32px;font-weight:700;line-height:1.25;text-align:center;cursor:pointer;transition:all .3s ease;border:none;box-shadow:0 4px 15px #0066d94d}.main-admin-btn:hover{background:var(--color-primary-btn-bg)!important;transform:translateY(-2px);box-shadow:0 6px 20px #0066d966}.main-panel{position:relative;width:580px;max-width:80vw;background:var(--kaiso-surface);color:var(--kaiso-text-primary);border:3px solid var(--kaiso-border);border-radius:var(--border-radius-xl);padding:var(--space-xxl) var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-xxl);box-sizing:border-box;margin-top:var(--space-xxl);margin-bottom:0;z-index:1;box-shadow:var(--shadow-lg)}.main-panel h2{margin:0 0 var(--space-xxl);font-size:56px;font-weight:var(--font-weight-bold);color:var(--kaiso-text-primary)}.main-panel h2{margin:0;font-size:56px;font-weight:var(--font-weight-bold);text-align:center}.main-rect-btn{width:450px;max-width:80vw;height:120px;border:none;border-radius:8px;color:#fff;font-size:48px;font-weight:700;box-shadow:0 6px #00000073;transition:opacity .2s;cursor:pointer;position:relative!important;display:block!important;margin:0 auto!important;float:none!important}.main-rect-btn:hover{opacity:.85}.btn-orange{background:var(--color-primary-btn-bg)!important;color:var(--color-primary-btn-text)!important}.btn-green{background:var(--color-success)!important;color:var(--color-primary-btn-text)!important}.btn-blue{background:var(--color-accent)!important;color:var(--color-primary-btn-text)!important}.btn-register{background:var(--color-error)!important;color:var(--color-primary-btn-text)!important}.main-function-button{width:var(--button-width-large)!important;max-width:80vw!important;height:var(--button-height-large)!important;margin:var(--space-md) 0!important;font-size:33px!important;font-weight:var(--font-weight-bold)!important;border-radius:12px!important;border:2px solid rgba(255,255,255,.3)!important;cursor:pointer!important;color:#fff!important;position:relative!important;display:block!important;margin-left:auto!important;margin-right:auto!important;float:none!important;overflow:hidden!important;box-shadow:0 6px 16px #0003,0 0 0 1px #ffffff1a inset,0 1px #ffffff4d inset!important;background:linear-gradient(135deg,var(--btn-primary-color, #4CAF50) 0%,color-mix(in srgb,var(--btn-primary-color, #4CAF50) 85%,black) 100%)!important;transition:all .3s cubic-bezier(.4,0,.2,1)!important;transform:translateY(0)!important}.main-function-button:hover{transform:translateY(-4px) scale(1.02)!important;box-shadow:0 12px 32px #00000040,0 0 0 1px #fff3 inset,0 2px #fff6 inset!important;background:linear-gradient(135deg,color-mix(in srgb,var(--btn-primary-color, #4CAF50) 110%,white) 0%,var(--btn-primary-color, #4CAF50) 100%)!important}.main-function-button:active{transform:translateY(-1px) scale(.98)!important;box-shadow:0 4px 12px #0000004d,0 0 0 1px #0000001a inset,0 2px 4px #0003 inset!important;transition:all .1s ease!important}.main-function-button.btn-primary{--btn-primary-color: #4CAF50}.main-function-button.btn-secondary{--btn-primary-color: #2196F3}.main-function-button.btn-success{--btn-primary-color: #9C27B0}.main-function-button.btn-demo{--btn-primary-color: #FF6B35}.main-function-button.btn-warning{--btn-primary-color: #FF9800}.main-function-button.btn-info{--btn-primary-color: #757575}.main-function-button.btn-manage{--btn-primary-color: #FF5722}.main-function-button.btn-create{--btn-primary-color: #00BCD4}.main-function-button.btn-danger{--btn-primary-color: #F44336}.main-register-unified-btn{position:relative!important;width:var(--button-width-large)!important;max-width:80vw!important;height:var(--button-height-large)!important;margin:var(--space-xl) auto var(--space-lg) auto!important;font-size:28px!important;font-weight:var(--font-weight-bold)!important;border-radius:var(--border-radius-md)!important;border:none!important;cursor:pointer!important;background:var(--gradient-warning)!important;color:#fff!important;box-shadow:var(--shadow-lg)!important;transition:var(--transition-medium)!important;animation:none!important;left:auto!important;right:auto!important;transform:none!important;z-index:2!important;display:block!important;overflow:hidden!important}.main-register-unified-btn:hover{background:var(--gradient-warning-hover)!important;transform:translateY(-2px)!important;box-shadow:var(--shadow-xl)!important;left:auto!important;right:auto!important;margin:var(--space-xl) auto var(--space-lg) auto!important}.main-register-unified-btn:active{transform:translateY(0)!important;transition:var(--transition-fast)!important}.main-register-separate-btn{position:absolute!important;left:50%!important;transform:translate(-50%)!important;top:772px!important;width:400px!important;max-width:80vw!important;height:100px!important;background:var(--color-error)!important;color:var(--color-primary-btn-text)!important;border:none!important;border-radius:12px!important;font-size:36px!important;font-weight:700!important;cursor:pointer!important;box-shadow:0 4px 12px var(--kaiso-shadow-color, rgba(0,0,0,.2))!important;transition:none!important;animation:none!important;right:auto!important;margin:0!important;z-index:10!important}.main-register-separate-btn:hover{opacity:.85;transform:translate(-50%)!important;box-shadow:0 4px 12px var(--kaiso-shadow-color, rgba(0,0,0,.3));left:50%!important;right:auto!important;margin-left:0!important;margin-right:0!important}.main-note{position:relative;z-index:2;text-align:center;font-size:28px;font-weight:700;color:var(--kaiso-text-primary);line-height:1.4}.groups-create-btn{background:var(--color-primary-btn-bg)!important;color:var(--color-primary-btn-text)!important}.groups-create-btn:hover{opacity:.85}.groups-detail-btn{background:var(--color-success)!important;color:var(--color-primary-btn-text)!important}.groups-detail-btn:hover{opacity:.85}.groups-playlist-btn{background:var(--color-accent)!important;color:var(--color-primary-btn-text)!important}.groups-playlist-btn:hover{opacity:.85}@media (max-width:1024px){.main-wrapper{padding:32px 12px 24px}.main-panel{width:90vw;max-width:700px;margin-top:40px;padding:40px 24px;gap:40px}.main-panel h2{font-size:50px;margin-bottom:40px}.main-rect-btn{width:400px;max-width:85vw;height:110px;font-size:44px}.main-function-button{width:380px!important;max-width:85vw!important;height:75px!important;font-size:29px!important;margin:8px 0!important}.main-register-unified-btn{width:380px!important;height:75px!important;font-size:24px!important;margin:30px auto 20px!important}.main-register-separate-btn{top:668px;width:380px;height:90px;font-size:32px}}@media (max-width:768px){.main-wrapper{padding:24px 8px 20px}.main-panel{width:95vw;max-width:600px;margin-top:30px;padding:32px 20px;gap:32px}.main-panel h2{font-size:46px;margin-bottom:32px}.main-rect-btn{width:350px;max-width:90vw;height:100px;font-size:40px}.main-function-button{width:350px!important;max-width:90vw!important;height:70px!important;font-size:27px!important;margin:8px 0!important}.main-register-unified-btn{width:350px!important;height:70px!important;font-size:22px!important;margin:25px auto 20px!important}.main-register-separate-btn{top:575px;width:330px;height:80px;font-size:28px}.main-edit-btn{width:150px;height:150px;font-size:36px;right:24px;top:24px}.main-admin-btn{width:150px;height:150px;font-size:28px;right:180px;top:24px}.main-back-btn{width:100px;height:100px;left:24px;top:24px;z-index:9999}}@media (max-width:640px){.main-wrapper{padding:20px 4px 16px}.main-panel{width:96vw;max-width:500px;margin-top:20px;padding:32px 16px;gap:28px}.main-panel h2{font-size:42px;margin-bottom:24px}.main-rect-btn{width:300px;max-width:92vw;height:90px;font-size:32px}.main-function-button{width:300px!important;max-width:92vw!important;height:65px!important;font-size:25px!important;margin:6px 0!important}.main-register-unified-btn{width:300px!important;height:65px!important;font-size:20px!important;margin:20px auto 15px!important}.main-register-separate-btn{top:506px;width:280px;height:70px;font-size:24px}.main-edit-btn{width:120px;height:120px;font-size:20px;right:16px;top:16px}.main-admin-btn{width:120px;height:120px;font-size:18px;right:140px;top:16px}.main-back-btn{width:80px;height:80px;left:16px;top:16px;z-index:9999}.main-note{font-size:18px}}@media (max-width:480px){.main-wrapper{padding:16px 2px 12px}.main-panel{width:98vw;max-width:400px;margin-top:15px;padding:24px 12px;gap:20px}.main-panel h2{font-size:36px;margin-bottom:20px}.main-rect-btn{width:280px;max-width:94vw;height:75px;font-size:26px}.main-function-button{width:280px!important;max-width:94vw!important;height:60px!important;font-size:23px!important;margin:5px 0!important}.main-register-unified-btn{width:280px!important;height:60px!important;font-size:18px!important;margin:16px auto 15px!important}.main-register-separate-btn{top:405px;width:260px;height:60px;font-size:20px}.main-edit-btn{width:100px;height:100px;font-size:16px;right:12px;top:12px}.main-admin-btn{width:100px;height:100px;font-size:14px;right:116px;top:12px}.main-back-btn{width:70px;height:70px;left:12px;top:12px;z-index:9999}}@media (max-width:360px){.main-panel{width:99vw;padding:20px 8px;gap:16px}.main-panel h2{font-size:32px;margin-bottom:16px}.main-rect-btn{width:250px;max-width:96vw;height:65px;font-size:22px}.main-function-button{width:250px!important;max-width:96vw!important;height:55px!important;font-size:19px!important;margin:4px 0!important}.main-register-unified-btn{top:330px!important;width:250px!important;height:55px!important;font-size:14px!important}.main-register-separate-btn{top:337px;width:240px;height:55px;font-size:18px}.main-edit-btn{width:80px;height:80px;font-size:14px;right:8px;top:8px}.main-admin-btn{width:80px;height:80px;font-size:12px;right:92px;top:8px}.main-back-btn{width:60px;height:60px;left:8px;top:8px;z-index:9999}}.us-wrapper{padding:48px 24px 64px;max-width:1200px;margin:0 auto;font-family:Noto Sans JP,sans-serif;background:#fff;min-height:100vh;box-sizing:border-box}.search-container{margin-bottom:20px}.search-input-wrapper{position:relative;display:flex;align-items:center;gap:10px}.search-icon{font-size:20px;color:var(--kaiso-text-secondary);order:-1}.search-input{flex:1;padding:12px 16px;border:2px solid var(--kaiso-border);border-radius:8px;background-color:var(--kaiso-input-bg);color:var(--kaiso-text-primary);font-size:16px;font-family:var(--kaiso-font-family);transition:all .3s ease}.search-input:focus{outline:none;border-color:var(--kaiso-primary);box-shadow:0 0 0 3px #1e88e533}.search-clear-btn{background:none;border:none;color:var(--kaiso-text-secondary);font-size:18px;cursor:pointer;padding:4px;border-radius:50%;transition:all .2s ease}.search-clear-btn:hover{background-color:var(--kaiso-surface-elevated);color:var(--kaiso-text-primary)}.search-results-info{font-size:14px;color:var(--kaiso-text-secondary);margin-top:8px}.us-back-btn{position:fixed;left:24px;top:24px;width:110px;height:110px;background:url(/static/assets/modoru.png) no-repeat center/contain;border:none;cursor:pointer}.us-title{text-align:center;font-size:48px;font-weight:700;margin:0 0 32px}.us-table-wrap{overflow-x:auto}.us-table{width:100%;border-collapse:collapse;min-width:900px;font-size:20px}.us-table th,.us-table td{border:1px solid #c4c4c4;padding:10px 12px;text-align:center}.us-table thead th{background:#f3f4f6;font-weight:700}.us-actions a{color:#0070c0;text-decoration:none;font-weight:500;margin:0 4px}.us-actions a:hover{text-decoration:underline}@media (max-width:640px){.us-title{font-size:32px}.us-table{font-size:16px}}.us-wrapper{padding:24px 16px;font-family:Noto Sans JP,sans-serif}.us-title{text-align:center;font-size:48px;margin:0 0 24px}.us-back{position:fixed;top:36px;left:36px;width:110px;height:110px;cursor:pointer}.us-table{display:grid;row-gap:6px}.us-row{display:grid;grid-template-columns:1fr 80px 80px 1fr 1fr 1fr 1fr 180px;border-bottom:1px solid #ddd}.us-head{font-weight:700;background:#f5f5f5}.us-row>div{padding:6px 4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.us-actions button{margin:0 4px;padding:4px 10px;border:none;border-radius:4px;background:#006bb3;color:#fff;font-size:14px;cursor:pointer}.us-actions button:hover{opacity:.85}.pf-root{min-height:100vh;background:#e5e5e5;display:flex;justify-content:center;align-items:flex-start;padding:40px 12px;box-sizing:border-box}.pf-back{position:absolute;top:22px;left:22px;width:110px;height:110px;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:20}.pf-wrapper{position:relative;background:#3d3d3d;border-radius:22px;width:900px;max-width:95vw;padding:110px 80px 140px;box-sizing:border-box;color:#fff;font-family:Noto Sans JP,sans-serif}.pf-title{position:absolute;top:40px;left:50%;transform:translate(-50%);font-size:38px;font-weight:700;margin:0}.pf-grid{display:grid;grid-template-columns:1fr 1fr;grid-column-gap:60px;grid-row-gap:38px}.pf-field label{font-size:22px;font-weight:700;margin-bottom:6px;display:block}.pf-input{width:100%;height:56px;border:none;border-radius:6px;padding:0 14px;font-size:22px}.pf-radio-group{background:#fff;border-radius:6px;height:56px;display:flex;align-items:center;padding:0 18px}.pf-radio-group label{display:flex;align-items:center;font-size:26px;font-weight:700;color:#000;margin-right:40px}.pf-radio-group input{width:22px;height:22px;margin-right:8px}.pf-submit{position:absolute;left:50%;bottom:40px;transform:translate(-50%);width:280px;height:74px;background:#d24800;color:#fff;font-size:32px;font-weight:700;border:none;border-radius:6px;cursor:pointer;box-shadow:0 6px #00000073}@media (max-width:640px){.pf-grid{grid-column-gap:20px}}.rc-root{position:relative;width:100vw;height:100vh;background:#e5e5e5;display:flex;justify-content:center;align-items:center;font-family:Noto Sans JP,sans-serif}.rc-back{position:absolute;top:30px;left:30px;width:110px;height:110px;cursor:pointer;-webkit-user-select:none;user-select:none}.rc-panel{width:900px;max-width:90vw;background:#3d3c3d;border-radius:24px;padding:60px 20px;box-sizing:border-box;text-align:center}.rc-title{margin:0 0 40px;font-size:48px;font-weight:700;color:#fff}.rc-btn{width:500px;max-width:80vw;height:95px;border:none;border-radius:6px;color:#fff;font-size:40px;font-weight:700;cursor:pointer;margin-bottom:40px;box-shadow:0 6px #00000080}.rc-orange{background:#d24800}.rc-pink{background:#cb1f7a}.rc-green{background:#008736}.rc-note{margin-top:20px;font-size:26px;font-weight:700;color:#fff}@media (max-width:640px){.rc-btn{height:80px;font-size:32px}.rc-title{font-size:38px}}.llm-debug-section{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;padding:20px;margin:20px 0;color:#fff;box-shadow:0 4px 15px #0000001a}.llm-debug-title{margin:0 0 15px;font-size:22px;font-weight:700;text-align:center}.llm-debug-summary{display:flex;justify-content:space-around;margin-bottom:20px;padding:10px;background:#ffffff1a;border-radius:8px}.llm-stat{font-size:16px;font-weight:600}.llm-word-categories{display:flex;flex-direction:column;gap:12px}.llm-category{background:#ffffff26;border-radius:8px;padding:12px}.llm-category-name{display:block;font-weight:600;margin-bottom:8px;font-size:16px}.llm-words{display:flex;flex-wrap:wrap;gap:6px}.llm-word{background:var(--kaiso-surface);color:var(--kaiso-text-primary);padding:4px 8px;border-radius:16px;font-size:14px;font-weight:500;border:1px solid rgba(255,255,255,.3)}@media (max-width:640px){.llm-debug-section{margin:15px 0;padding:15px}.llm-debug-title{font-size:20px}.llm-debug-summary{flex-direction:column;gap:8px;text-align:center}.llm-stat,.llm-category-name{font-size:14px}.llm-word{font-size:12px;padding:3px 6px}}.edit-wrapper{min-height:100vh;background:#e7e5e5;position:relative;font-family:Noto Sans JP,sans-serif;display:flex;justify-content:center;align-items:center;padding:20px;box-sizing:border-box}.edit-panel{background:#3d3c3d;border-radius:20px;padding:60px 40px;text-align:center;width:100%;max-width:500px;position:relative}.edit-panel h2{color:#fff;font-size:48px;font-weight:700;margin:0 0 40px}.edit-menu-btn{display:block;width:100%;margin:20px 0;padding:20px;border:none;border-radius:12px;font-size:28px;font-weight:600;cursor:pointer;transition:opacity .2s;text-align:center}.edit-menu-btn:hover{opacity:.85}.btn-user{background:#4a90e2;color:#fff}.btn-settings{background:#28a745;color:#fff}@media (max-width:640px){.edit-panel{padding:40px 20px}.edit-panel h2{font-size:36px;margin:0 0 30px}.edit-menu-btn{font-size:24px;padding:16px}}.reg-wrapper{min-height:100vh;background:var(--kaiso-background);position:relative;font-family:Noto Sans JP,sans-serif;padding:20px;box-sizing:border-box}.reg-back-btn{position:fixed;left:24px;top:24px;width:110px;height:110px;cursor:pointer;z-index:10}.reg-container{max-width:600px;margin:80px auto 0;background:var(--kaiso-surface);border-radius:20px;padding:40px 20px}.reg-header{text-align:center;margin-bottom:40px}.reg-title{font-size:28px;font-weight:700;color:var(--kaiso-text-primary);margin:0 0 10px}.reg-progress{font-size:18px;color:var(--kaiso-text-secondary);font-weight:600}.reg-form{width:100%}.reg-error{background:var(--kaiso-error-bg);color:var(--kaiso-error);padding:12px;border-radius:8px;margin-bottom:20px;font-weight:600;text-align:center}.reg-field{margin-bottom:30px}.reg-label{display:block;font-size:22px;font-weight:700;color:var(--kaiso-text-primary);margin-bottom:12px}.reg-input{width:100%;height:60px;font-size:24px;padding:0 16px;border:2px solid var(--kaiso-border);border-radius:8px;box-sizing:border-box;text-align:center;background:var(--kaiso-surface);color:var(--kaiso-text-primary)}.reg-input:focus{outline:none;border-color:var(--kaiso-primary);box-shadow:0 0 0 2px var(--kaiso-primary-alpha)}.reg-char-count{text-align:right;font-size:14px;color:var(--kaiso-text-secondary);margin-top:5px}.reg-gender-buttons{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.reg-gender-btn{position:relative;width:110px;height:60px;border:2px solid #BDBDBD!important;background:#f5f5f5!important;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;transition:all .3s ease!important;color:#424242!important}.reg-gender-btn.selected{background:var(--color-primary-btn-bg)!important;border:3px solid var(--color-primary-btn-bg)!important;color:var(--color-primary-btn-text)!important}.reg-gender-btn:hover:not(.selected){border-color:var(--color-accent)!important;background:var(--color-secondary-btn-bg)!important}.gender-text{display:block}.check-mark{position:absolute;top:5px;right:8px;font-size:16px;font-weight:700;color:var(--color-primary-btn-text)!important}.reg-select-row{display:flex;align-items:center;gap:15px}.reg-select-display{flex:1;height:60px;border:2px solid var(--kaiso-border);border-radius:8px;display:flex;align-items:center;padding:0 16px;font-size:18px;background:var(--kaiso-surface-elevated);color:var(--kaiso-text-primary)}.reg-select-btn{width:100px;height:50px;background:var(--kaiso-success);color:var(--kaiso-on-success);border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.reg-select-btn:hover{opacity:.85}.reg-help-text{font-size:14px;color:var(--kaiso-text-secondary);margin-top:5px}.reg-next-btn{width:100%;height:60px;background:var(--kaiso-primary);color:var(--kaiso-on-primary);border:none;border-radius:8px;font-size:20px;font-weight:700;cursor:pointer;margin-top:20px;transition:opacity .2s}.reg-next-btn:disabled{background:var(--kaiso-surface-disabled);cursor:not-allowed;color:var(--kaiso-text-disabled)}.reg-next-btn:hover:not(:disabled){opacity:.85}.reg-action-buttons{display:flex;flex-direction:column;gap:15px;margin-top:30px}.reg-register-btn{width:100%;height:60px;background:var(--kaiso-secondary);color:var(--kaiso-on-secondary);border:none;border-radius:8px;font-size:18px;font-weight:700;cursor:pointer;transition:opacity .2s}.reg-additional-btn{width:100%;height:60px;background:var(--kaiso-success);color:var(--kaiso-on-success);border:none;border-radius:8px;font-size:18px;font-weight:700;cursor:pointer;transition:opacity .2s}.reg-register-btn:disabled,.reg-additional-btn:disabled{background:var(--kaiso-surface-disabled);cursor:not-allowed;color:var(--kaiso-text-disabled)}.reg-register-btn:hover:not(:disabled),.reg-additional-btn:hover:not(:disabled){opacity:.85}.reg-confirm-section{margin:20px 0}.reg-confirm-item{display:flex;padding:15px 0;border-bottom:1px solid #eee}.reg-confirm-label{width:120px;font-size:18px;font-weight:700;color:var(--kaiso-text-primary);flex-shrink:0}.reg-confirm-value{flex:1;font-size:18px;color:var(--kaiso-text-primary)}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;overflow-y:auto;padding:20px;box-sizing:border-box}.modal-container{background:var(--kaiso-surface);border-radius:16px;max-width:90vw;max-height:90vh;overflow-y:auto;box-shadow:0 8px 32px var(--kaiso-shadow);display:flex;flex-direction:column}.modal-header{padding:20px;border-bottom:1px solid var(--kaiso-border);text-align:center}.modal-header h3{margin:0;font-size:20px;font-weight:700;color:var(--kaiso-text-primary)}.modal-actions{padding:20px;display:flex;gap:15px;border-top:1px solid var(--kaiso-border);flex-shrink:0}.modal-btn{flex:1;height:50px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:opacity .2s}.modal-btn.cancel{background:var(--kaiso-surface-elevated);color:var(--kaiso-text-primary)}.modal-btn.confirm{background:var(--kaiso-primary);color:var(--kaiso-on-primary)}.modal-btn:disabled{background:var(--kaiso-surface-disabled);color:var(--kaiso-text-disabled);cursor:not-allowed}.modal-btn:hover:not(:disabled){opacity:.85}.age-picker-modal{width:400px}.age-picker-content{padding:30px 20px;text-align:center}.year-selector{display:flex;align-items:center;justify-content:center;gap:20px;margin-bottom:20px}.year-btn{width:50px;height:50px;background:var(--kaiso-primary);color:var(--kaiso-on-primary);border:none;border-radius:50%;font-size:24px;font-weight:700;cursor:pointer;transition:opacity .2s}.year-btn:disabled{background:var(--kaiso-surface-disabled);cursor:not-allowed}.year-btn:hover:not(:disabled){opacity:.85}.year-display{margin:0 10px}.year-select{font-size:24px;padding:10px;border:2px solid var(--kaiso-border);border-radius:8px;text-align:center;min-width:120px;background:var(--kaiso-surface);color:var(--kaiso-text-primary)}.age-display{margin:20px 0}.age-text{font-size:22px;font-weight:700;color:var(--kaiso-primary)!important}.age-error{color:var(--kaiso-error);font-size:16px;margin-top:10px}.region-picker-modal{width:600px}.selection-info{font-size:14px;color:var(--kaiso-text-secondary);margin-top:5px}.region-picker-content{padding:20px;max-height:50vh;overflow-y:auto;flex:1}.region-warning{background:var(--kaiso-warning-bg);color:var(--kaiso-warning);padding:10px;border-radius:8px;margin-bottom:15px;text-align:center;font-weight:600}.region-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:15px}.region-column{display:flex;flex-direction:column;gap:8px}.region-btn{position:relative;height:40px;border:1px solid var(--kaiso-border);background:var(--kaiso-surface);color:var(--kaiso-text-primary);border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.region-btn.selected{background:var(--kaiso-primary);border-color:var(--kaiso-primary);color:var(--kaiso-on-primary)}.region-btn:disabled{background:var(--kaiso-surface-disabled);color:var(--kaiso-text-disabled);cursor:not-allowed}.region-btn:hover:not(.selected):not(:disabled){border-color:var(--kaiso-border-hover)}.region-name{flex:1;text-align:center}.selection-order{position:absolute;top:2px;right:6px;width:16px;height:16px;background:var(--kaiso-on-primary);color:var(--kaiso-primary);border-radius:50%;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.selected-regions{margin-top:20px;padding:15px;background:var(--kaiso-info-bg);border-radius:8px}.selected-label{font-weight:600;color:var(--kaiso-text-primary);margin-bottom:5px}.selected-list{color:var(--kaiso-primary);font-weight:600}@media (max-width:640px){.reg-container{padding:30px 15px;margin-top:60px}.reg-title{font-size:24px}.reg-input{height:50px;font-size:20px}.reg-gender-btn{width:100px;height:50px;font-size:18px}.modal-container{max-width:95vw}.age-picker-modal{width:350px}.region-picker-modal{width:95vw}.region-grid{grid-template-columns:1fr 1fr;gap:10px}.region-btn{height:35px;font-size:13px}}.additional-info-container{width:100%;min-height:100vh;padding:20px;background-color:var(--kaiso-background);font-family:Hiragino Sans,Yu Gothic UI,sans-serif}.additional-header{display:flex;align-items:center;margin-bottom:30px;position:relative}.additional-header h1{font-size:28px;font-weight:700;color:#333;margin:0;flex:1;text-align:center;padding-right:60px}.progress-indicator{display:flex;align-items:center;justify-content:center;margin-bottom:10px}.progress-step{width:40px;height:40px;border-radius:50%;background-color:#ddd;color:#999;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px}.progress-step.active{background-color:#007bff;color:#fff}.progress-step.completed{background-color:#28a745;color:#fff}.progress-line{width:60px;height:3px;background-color:#ddd;margin:0 10px}.progress-line.completed{background-color:#28a745}.progress-text{text-align:center;font-size:18px;color:#666;margin-bottom:40px}.question-area{background-color:var(--kaiso-surface);border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000001a}.question-title{font-size:24px;font-weight:700;color:var(--kaiso-text-primary);margin-bottom:20px;text-align:center}.question-subtitle{font-size:16px;color:#666;text-align:center;margin-bottom:30px}.choice-buttons{display:flex;flex-direction:column;gap:15px;margin-bottom:30px}.choice-btn{padding:20px;border:2px solid var(--kaiso-border);border-radius:10px;background-color:var(--kaiso-surface);font-size:20px;font-weight:700;color:var(--kaiso-text-primary);cursor:pointer;transition:all .3s ease}.choice-btn:hover{border-color:var(--kaiso-primary);background-color:var(--kaiso-surface-elevated)}.choice-btn:active{background-color:var(--kaiso-primary);color:var(--kaiso-on-primary)}.multiple-choice-area{margin-bottom:30px}.choice-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-bottom:30px}.choice-option{padding:15px;border:2px solid var(--kaiso-border);border-radius:8px;background-color:var(--kaiso-surface);font-size:16px;color:var(--kaiso-text-primary);cursor:pointer;transition:all .3s ease;position:relative;min-height:60px;display:flex;align-items:center;justify-content:center;text-align:center}.choice-option:hover{border-color:#007bff;background-color:#f8f9fa}.choice-option.selected{border-color:#007bff;background-color:#e3f2fd;color:#007bff;font-weight:700}.choice-option:disabled{opacity:.5;cursor:not-allowed}.check-mark{position:absolute;top:5px;right:10px;color:var(--color-primary-btn-text)!important;font-weight:700;font-size:16px}.occupation-grid,.hobby-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;margin-bottom:30px}.occupation-option,.hobby-option{padding:12px;border:2px solid #ddd;border-radius:8px;background-color:#fff;font-size:14px;color:#333;cursor:pointer;transition:all .3s ease;position:relative;min-height:50px;display:flex;align-items:center;justify-content:center;text-align:center}.occupation-option:hover,.hobby-option:hover{border-color:#007bff;background-color:#f8f9fa}.occupation-option.selected,.hobby-option.selected{border-color:#007bff;background-color:#e3f2fd;color:#007bff;font-weight:700}.occupation-option:disabled,.hobby-option:disabled{opacity:.5;cursor:not-allowed}.selected-items{margin-bottom:30px;padding:20px;background-color:#f8f9fa;border-radius:8px}.selected-items h3{margin:0 0 15px;font-size:18px;color:#333}.selected-list{display:flex;flex-wrap:wrap;gap:10px}.selected-item{display:flex;align-items:center;background-color:#007bff;color:#fff;padding:8px 12px;border-radius:20px;font-size:14px}.remove-btn{background:none;border:none;color:#fff;margin-left:8px;cursor:pointer;font-size:16px;font-weight:700;padding:0;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center}.remove-btn:hover{background-color:#fff3}.nav-buttons{display:flex;gap:15px;justify-content:center;margin-top:40px}.next-btn,.skip-btn,.complete-btn{padding:15px 30px;border:none;border-radius:8px;font-size:18px;font-weight:700;cursor:pointer;transition:all .3s ease;min-width:120px}.next-btn,.complete-btn{background-color:#007bff;color:#fff}.next-btn:hover,.complete-btn:hover{background-color:#0056b3}.next-btn:disabled{background-color:#ccc;cursor:not-allowed}.skip-btn{background-color:#6c757d;color:#fff}.skip-btn:hover{background-color:#545b62}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;text-align:center}.loading-spinner{width:50px;height:50px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:20px}@media (max-width: 768px){.additional-info-container{padding:15px}.choice-grid{grid-template-columns:1fr}.occupation-grid,.hobby-grid{grid-template-columns:repeat(2,1fr)}.nav-buttons{flex-direction:column;align-items:center}.next-btn,.skip-btn,.complete-btn{width:100%;max-width:300px}}.user-edit-container{width:100%;min-height:100vh;padding:20px;background-color:#f5f5f5;font-family:Hiragino Sans,Yu Gothic UI,sans-serif}.user-edit-header{display:flex;align-items:center;margin-bottom:30px;position:relative}.user-edit-header h1{font-size:28px;font-weight:700;color:#333;margin:0;flex:1;text-align:center;padding-right:60px}.user-edit-form-container{max-width:600px;margin:0 auto;background-color:var(--kaiso-surface);border-radius:12px;padding:30px;box-shadow:0 2px 10px #0000001a}.user-edit-form h2{font-size:24px;font-weight:700;color:#333;margin:0 0 30px;text-align:center;padding-bottom:15px;border-bottom:2px solid #007bff}.form-group{margin-bottom:25px}.form-group label{display:block;font-size:16px;font-weight:600;color:#333;margin-bottom:8px}.form-input{width:100%;height:50px;font-size:16px;padding:0 15px;border:2px solid #ddd;border-radius:8px;box-sizing:border-box;transition:border-color .3s ease}.form-input:focus{outline:none;border-color:#007bff;box-shadow:0 0 0 3px #007bff1a}.form-input[type=number]{-moz-appearance:textfield}.form-input[type=number]::-webkit-outer-spin-button,.form-input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-actions{display:flex;gap:15px;justify-content:center;margin-top:40px;padding-top:20px;border-top:1px solid #eee}.cancel-btn,.save-btn{padding:15px 30px;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:120px}.cancel-btn{background-color:#6c757d;color:#fff}.cancel-btn:hover:not(:disabled){background-color:#545b62}.save-btn{background-color:#007bff;color:#fff}.save-btn:hover:not(:disabled){background-color:#0056b3}.cancel-btn:disabled,.save-btn:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.error-message{background-color:#ffe6e6;color:#d32f2f;padding:12px;border-radius:8px;margin-bottom:20px;font-weight:600;text-align:center;border:1px solid #ffcdd2}.error-container{max-width:400px;margin:100px auto;background-color:var(--kaiso-surface);border-radius:12px;padding:40px;text-align:center;box-shadow:0 2px 10px #0000001a}.error-container h2{color:#d32f2f;margin-bottom:20px}.error-container button{background-color:#007bff;color:#fff;border:none;border-radius:8px;padding:12px 24px;font-size:16px;cursor:pointer;margin-top:20px}.error-container button:hover{background-color:#0056b3}.edit-user-btn{background-color:#28a745 \!important;color:white \!important;border:none \!important;border-radius:6px \!important;padding:8px 12px \!important;font-size:14px \!important;font-weight:600 \!important;cursor:pointer \!important;transition:all .3s ease \!important}.edit-user-btn:hover{background-color:#218838 \!important;transform:translateY(-1px) \!important}@media (max-width: 768px){.user-edit-container{padding:15px}.user-edit-form-container{padding:20px}.user-edit-header h1{font-size:24px}.form-actions{flex-direction:column;align-items:center}.cancel-btn,.save-btn{width:100%;max-width:300px}}.wrapper,.container,.content,.main,.page,.us-wrapper,.pf-root,.rc-root,.edit-wrapper,.reg-wrapper,.additional-info-container,.user-edit-container,.lp-wrapper{background-color:var(--color-bg) \!important;color:var(--color-text-primary) \!important}.panel,.card,.modal-container,.form-container,.us-table,.pf-wrapper,.rc-panel,.edit-panel,.reg-container,.question-area,.user-edit-form-container{background-color:var(--color-surface) \!important;color:var(--color-text-primary) \!important;border-color:var(--color-border) \!important}h1,h2,h3,h4,h5,h6,p,span,div,label,li,td,th{color:var(--color-text-primary)!important}button:not(.btn-orange):not(.btn-green):not(.btn-blue),.btn,input[type=button],input[type=submit]{background-color:var(--color-primary-btn-bg)!important;color:var(--color-primary-btn-text)!important;border-color:var(--color-border)!important}.required-mark{color:var(--color-error)!important;font-weight:700;margin-left:4px}.reg-success{background:var(--color-success)!important;color:var(--kaiso-text-button)!important;padding:16px 20px;border-radius:8px;margin-bottom:24px;font-weight:600;text-align:center;box-shadow:0 4px 12px #4caf504d;animation:slideInSuccess .5s ease-out}@keyframes slideInSuccess{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.reg-input-container{position:relative;display:flex;align-items:center}.reg-input{width:100%!important;padding:16px 20px!important;border:2px solid var(--kaiso-border)!important;border-radius:8px!important;font-size:18px!important;font-weight:500!important;background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;transition:all .3s ease!important}.reg-input:focus{outline:none!important;border-color:var(--kaiso-primary)!important;box-shadow:0 0 0 3px #1976d233!important;transform:translateY(-1px)!important}.reg-input.error{border-color:var(--color-error)!important;background:#f443360d!important;box-shadow:0 0 0 3px #f443361a!important}.reg-input.valid{border-color:var(--color-success)!important;background:#4caf500d!important}.input-success-icon{position:absolute;right:16px;color:var(--color-success)!important;font-weight:700;font-size:18px;animation:successPop .3s ease-out}@keyframes successPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.reg-char-count{margin-top:8px!important;font-size:14px!important;color:var(--kaiso-text-secondary)!important;text-align:right!important;font-weight:500!important}.reg-char-count.warning{color:var(--color-error)!important;font-weight:700!important}.reg-field-error-message{margin-top:8px!important;padding:8px 12px!important;background:#f443361a!important;border:1px solid var(--color-error)!important;border-radius:6px!important;color:var(--color-error)!important;font-size:14px!important;font-weight:600!important;animation:errorShake .5s ease-out}@keyframes errorShake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.reg-help-text{margin-top:8px!important;font-size:13px!important;color:var(--kaiso-text-secondary)!important;font-style:italic;opacity:.8}.reg-field-error{position:relative}.reg-field-error:before{content:"";position:absolute;left:-8px;top:0;bottom:0;width:4px;background:var(--color-error);border-radius:2px}.reg-gender-btn{position:relative!important;transition:all .3s ease!important;overflow:hidden}.reg-gender-btn:hover{transform:translateY(-2px)!important;box-shadow:0 6px 16px #1976d24d!important}.reg-gender-btn.selected{background:var(--kaiso-primary)!important;color:var(--kaiso-text-button)!important;transform:scale(1.02)!important;box-shadow:0 4px 16px #1976d266!important}.reg-gender-btn.selection-success{animation:selectionSuccess .3s ease-out}@keyframes selectionSuccess{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1.02)}}.reg-form-progress{margin:32px 0 24px;text-align:center}.progress-bar{width:100%;height:8px;background:var(--kaiso-border);border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;background:linear-gradient(90deg,var(--kaiso-primary),var(--color-success));border-radius:4px;transition:width .5s ease;position:relative}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:progressShine 2s infinite}@keyframes progressShine{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{font-size:14px;color:var(--kaiso-text-secondary);font-weight:600}.reg-next-btn{position:relative!important;overflow:hidden!important;transition:all .3s ease!important}.reg-next-btn.ready{background:var(--color-success)!important;box-shadow:0 6px 20px #4caf5066!important;transform:translateY(-2px)!important}.reg-next-btn:disabled{opacity:.6!important;cursor:not-allowed!important;transform:none!important}.reg-next-btn:not(:disabled):hover{transform:translateY(-3px)!important;box-shadow:0 8px 25px #1976d266!important}.loading-spinner{display:inline-block;width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.button-icon{margin-left:8px;transition:transform .3s ease}.reg-next-btn:hover .button-icon{transform:translate(4px)}.reg-button-help{margin-top:12px!important;text-align:center!important;font-size:13px!important;color:var(--kaiso-text-secondary)!important;font-style:italic}.secondary,.btn-secondary,.cancel,.btn-cancel{background-color:var(--color-secondary-btn-bg)!important;color:var(--color-secondary-btn-text)!important}input,textarea,select,option,table,tr,td,th{background-color:var(--color-surface)!important;color:var(--color-text-primary)!important;border-color:var(--color-border)!important}a{color:var(--color-accent)!important}a:hover{color:var(--color-primary-btn-bg)!important}.error,.error-message,.danger{color:var(--color-error)!important}.success,.success-message{color:var(--color-success)!important}body,html{background-color:var(--kaiso-background)!important;background:var(--kaiso-background)!important;color:var(--kaiso-text-primary)!important}[data-theme=dark] body,[data-theme=high-contrast] body{background-color:var(--kaiso-background)!important;background:var(--kaiso-background)!important}.groups-page-container{background-color:var(--kaiso-background)!important;color:var(--kaiso-text-primary)!important;min-height:100vh!important}.groups-wrap-test-v3{background-color:var(--kaiso-background)!important;color:var(--kaiso-text-primary)!important;min-height:100vh!important;padding:24px 12px 56px;max-width:1400px;margin:0 auto;font-family:Noto Sans JP,sans-serif}[data-theme=high-contrast] body .main-wrapper.groups-page-container,[data-theme=high-contrast] .main-wrapper.groups-page-container,[data-theme=high-contrast] .groups-page-container{background-color:#000!important;background:#000!important;background-image:none!important;min-height:100vh!important}[data-theme=high-contrast] .main-wrapper.groups-page-container[style*=background]{background-color:#000!important;background:#000!important}[data-theme=high-contrast] .groups-page-container *:not(button):not(.main-back-btn):not(.groups-item):not(.groups-detail-card){background-color:transparent!important}[data-theme=high-contrast] .groups-page-container .main-back-btn,[data-theme=high-contrast] .groups-page-container button:not(.main-back-btn),[data-theme=high-contrast] .groups-page-container .groups-item,[data-theme=high-contrast] .groups-page-container .groups-detail-card{background-color:var(--kaiso-surface)!important;background:var(--kaiso-surface)!important}[data-theme=high-contrast] body:has(.groups-page-container),[data-theme=high-contrast] html:has(.groups-page-container){background-color:#000!important;background:#000!important}[data-theme=light] body{background-color:var(--kaiso-background)!important;background:var(--kaiso-background)!important}.btn-register,.main-register-separate-btn{background-color:var(--color-error)!important;color:var(--color-primary-btn-text)!important}.reg-gender-btn{background:#f5f5f5!important;color:#424242!important;border:2px solid #BDBDBD!important;padding:16px 24px!important;border-radius:8px!important;font-size:18px!important;font-weight:600!important;min-height:48px!important;cursor:pointer!important;transition:all .3s ease!important;display:flex!important;align-items:center!important;justify-content:center!important}.reg-gender-btn:hover:not(.selected){background:#eee!important;border-color:#9e9e9e!important;transform:translateY(-2px)!important;box-shadow:0 4px 12px #9e9e9e4d!important}.reg-gender-btn:focus{outline:var(--kaiso-focus-ring, 4px solid var(--kaiso-primary))!important;outline-offset:var(--kaiso-focus-ring-offset, 2px)!important;box-shadow:0 0 0 4px #2196f333!important}.reg-gender-btn.selected{font-weight:700!important;transform:scale(1.02)!important;box-shadow:0 6px 16px #0003!important}.reg-gender-btn:active{transform:scale(.98)!important;transition:all .1s ease!important}[data-gender=M].reg-gender-btn.selected{background:#1976d2!important;color:#fff!important;border:3px solid #0D47A1!important;box-shadow:0 6px 16px #1976d280!important;transform:scale(1.05)!important}[data-gender=F].reg-gender-btn.selected{background:#c2185b!important;color:#fff!important;border:3px solid #880E4F!important;box-shadow:0 6px 16px #c2185b80!important;transform:scale(1.05)!important}[data-gender=O].reg-gender-btn.selected{background:#7b1fa2!important;color:#fff!important;border:3px solid #4A148C!important;box-shadow:0 6px 16px #7b1fa280!important;transform:scale(1.05)!important}.reg-gender-btn .check-mark{margin-left:8px!important;font-size:20px!important;font-weight:700!important;animation:checkMarkAppear .3s ease!important}@keyframes checkMarkAppear{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}[data-theme=dark] .reg-gender-btn.selected{background-color:#2985ff!important;color:#fff!important;border:3px solid #2985FF!important}[data-theme=high-contrast] .reg-gender-btn.selected{background-color:gold!important;color:#000!important;border:3px solid #FFD700!important}.btn-loading{position:relative!important;pointer-events:none!important;opacity:.8!important}.loading-spinner{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:20px!important;height:20px!important;border:2px solid transparent!important;border-top-color:#fff!important;border-radius:50%!important;animation:spin 1s linear infinite!important;z-index:2!important}.btn-loading .btn-text{opacity:0!important;transition:opacity .2s ease!important}@keyframes spin{0%{transform:translate(-50%,-50%) rotate(0)}to{transform:translate(-50%,-50%) rotate(360deg)}}.loading-spinner-small{width:16px!important;height:16px!important;border-width:2px!important}.loading-spinner-large{width:24px!important;height:24px!important;border-width:3px!important}.btn-loading:before{content:""!important;position:absolute!important;top:0!important;left:0!important;right:0!important;bottom:0!important;background:#0000001a!important;border-radius:inherit!important;z-index:1!important}.message-container{position:fixed!important;top:20px!important;left:50%!important;transform:translate(-50%)!important;z-index:1000!important;max-width:500px!important;width:90%!important}.message{padding:16px 20px!important;border-radius:8px!important;margin-bottom:12px!important;font-size:16px!important;font-weight:600!important;animation:messageSlideIn .3s ease!important;box-shadow:0 4px 12px #00000026!important;border:none!important;display:flex!important;align-items:center!important;gap:12px!important}.message.success{background:#e8f5e8!important;color:#1b5e20!important;border-left:4px solid #4CAF50!important}.message.error{background:#ffebee!important;color:#b71c1c!important;border-left:4px solid #F44336!important}.message.info{background:#e3f2fd!important;color:#0d47a1!important;border-left:4px solid #2196F3!important}.message.warning{background:#fff3e0!important;color:#e65100!important;border-left:4px solid #FF9800!important}.message-icon{font-size:20px!important;flex-shrink:0!important}@keyframes messageSlideIn{0%{opacity:0;transform:translate(-50%) translateY(-20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.message.fade-out{animation:messageSlideOut .3s ease forwards!important}@keyframes messageSlideOut{0%{opacity:1;transform:translate(-50%) translateY(0)}to{opacity:0;transform:translate(-50%) translateY(-20px)}}.reg-select-btn{color:#fff!important;box-shadow:0 2px 4px #0003!important}[data-theme=light] .reg-select-btn{background:#208a3c!important;color:#fff!important}[data-theme=dark] .reg-select-btn{background:#3ecf5e!important;color:#fff!important}[data-theme=high-contrast] .reg-select-btn{background:#0f0!important;color:#000!important;border:2px solid #00FF00!important}@media (min-width: 320px){:root{--kaiso-current-button-size: var(--kaiso-button-size-mobile);--kaiso-current-font-size: var(--kaiso-font-size-mobile);--kaiso-current-spacing: var(--kaiso-spacing-sm)}.sel-table{font-size:14px}.sel-table th,.sel-table td{padding:6px 4px;font-size:14px}.sel-ops button{font-size:12px;padding:4px 8px;min-width:60px}}@media (min-width: 480px){:root{--kaiso-current-button-size: var(--kaiso-button-size-mobile);--kaiso-current-font-size: var(--kaiso-font-size-mobile);--kaiso-current-spacing: var(--kaiso-spacing-md)}.sel-table{font-size:16px}.sel-table th,.sel-table td{padding:8px 6px;font-size:16px}.sel-ops button{font-size:13px;padding:5px 10px;min-width:70px}}@media (min-width: 640px){:root{--kaiso-current-button-size: var(--kaiso-button-size-mobile);--kaiso-current-font-size: var(--kaiso-font-size-mobile);--kaiso-current-spacing: var(--kaiso-spacing-md)}.sel-table{font-size:18px}.sel-table th,.sel-table td{padding:8px;font-size:18px}.sel-ops button{font-size:14px;padding:6px 12px;min-width:80px}}@media (min-width: 768px){:root{--kaiso-current-button-size: var(--kaiso-button-size-tablet);--kaiso-current-font-size: var(--kaiso-font-size-tablet);--kaiso-current-spacing: var(--kaiso-spacing-lg)}.sel-table{font-size:20px}.sel-table th,.sel-table td{padding:12px;font-size:20px}.sel-ops button{font-size:16px;padding:8px 14px;min-width:90px}.admin-nav{flex-direction:row}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}}@media (min-width: 1024px){:root{--kaiso-current-button-size: var(--kaiso-button-size-desktop);--kaiso-current-font-size: var(--kaiso-font-size-desktop);--kaiso-current-spacing: var(--kaiso-spacing-xl)}.sel-wrap{padding:var(--kaiso-spacing-xl)}.sel-table{font-size:22px}.sel-table th,.sel-table td{padding:16px;font-size:22px}.sel-ops button{font-size:18px;padding:10px 16px;min-width:100px}.admin-content{padding:var(--kaiso-spacing-xl);max-width:1400px}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(450px,1fr))}.user-table-container{overflow-x:visible}}.error-boundary{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem;background-color:var(--color-bg)}.error-boundary-content{max-width:600px;text-align:center;background:var(--color-surface);border-radius:12px;padding:3rem 2rem;box-shadow:0 4px 20px #0000001a;border:1px solid var(--color-border)}.error-boundary-title{font-size:var(--kaiso-font-h2);color:var(--color-error);margin-bottom:1rem;font-weight:700}.error-boundary-message{font-size:1.1rem;color:var(--color-text-secondary);margin-bottom:2rem;line-height:1.6}.error-boundary-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-bottom:2rem}.error-boundary-button{padding:.75rem 1.5rem;border-radius:8px;border:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:120px}.error-boundary-button-primary{background-color:var(--color-primary-btn-bg);color:var(--color-primary-btn-text)}.error-boundary-button-primary:hover{opacity:.9;transform:translateY(-1px)}.error-boundary-button-secondary{background-color:var(--color-secondary-btn-bg);color:var(--color-secondary-btn-text);border:1px solid var(--color-border)}.error-boundary-button-secondary:hover{background-color:var(--color-border)}.error-boundary-details{margin-top:2rem;text-align:left}.error-boundary-details summary{cursor:pointer;font-weight:600;color:var(--color-text-secondary);padding:.5rem;border-radius:4px;background-color:var(--color-surface-elevated)}.error-boundary-stack{background-color:var(--color-surface-elevated);padding:1rem;border-radius:4px;font-size:.9rem;color:var(--color-text-secondary);white-space:pre-wrap;overflow-x:auto;max-height:200px;overflow-y:auto;margin-top:.5rem}.network-error-notification{position:fixed;top:20px;right:20px;background-color:var(--color-error);color:var(--kaiso-on-error);padding:1rem 1.5rem;border-radius:8px;box-shadow:0 4px 12px #0003;z-index:10000;max-width:400px;font-weight:600;display:flex;align-items:center;gap:.5rem}.notification-close{background:none;border:none;color:inherit;font-size:1.2rem;cursor:pointer;padding:0 .25rem;margin-left:auto;opacity:.8}.notification-close:hover{opacity:1}.loading-content{display:flex;flex-direction:column;align-items:center;gap:1rem}.loading-message{color:#fff;font-weight:600;font-size:1.1rem;margin:0}.network-error-notification.success{background-color:var(--color-success);color:#fff}.network-error-notification.warning{background-color:var(--color-warning);color:#fff}.loading-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:9999}.loading-spinner{width:50px;height:50px;border:4px solid var(--color-border);border-top:4px solid var(--color-primary-btn-bg);border-radius:50%;animation:spin 1s linear infinite}@media (max-width: 640px){.error-boundary-content{padding:2rem 1rem;margin:1rem}.error-boundary-actions{flex-direction:column}.error-boundary-button{width:100%}.network-error-notification{right:10px;left:10px;max-width:none}}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f5f5f5,#e3f2fd);padding:var(--space-lg, 24px);font-family:Noto Sans JP,sans-serif}.error-boundary-content{max-width:600px;background:var(--kaiso-surface, #FFFFFF);border-radius:16px;padding:40px;box-shadow:0 16px 48px #00000026,0 8px 24px #0000001a;text-align:center;border:1px solid var(--kaiso-border, #E0E0E0);animation:errorBoundarySlideIn .4s ease-out}@keyframes errorBoundarySlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.error-boundary-title{font-size:24px!important;font-weight:700;color:var(--kaiso-error, #F44336);margin:0 0 20px;text-shadow:1px 1px 2px rgba(244,67,54,.1);display:flex;align-items:center;justify-content:center;gap:12px}.error-boundary-title:before{content:"⚠️";font-size:28px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.error-boundary-message{font-size:18px!important;color:var(--kaiso-text-primary, #212121);line-height:1.6;margin:0 0 32px;padding:20px;background:#f443360d;border-radius:12px;border:1px solid rgba(244,67,54,.2)}.error-boundary-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin:32px 0}.error-boundary-button{font-size:16px!important;font-weight:600;min-height:48px!important;min-width:120px;padding:12px 24px;border-radius:8px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;box-shadow:0 4px 12px #00000026;display:flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.error-boundary-button:focus{outline:4px solid var(--kaiso-brand-primary, #1E88E5)!important;outline-offset:2px!important}.error-boundary-button-primary{background:linear-gradient(135deg,var(--kaiso-error, #F44336) 0%,#C62828 100%);color:#fff!important;font-weight:700}.error-boundary-button-primary:hover{background:linear-gradient(135deg,#c62828,#b71c1c);transform:translateY(-2px);box-shadow:0 8px 20px #f4433666}.error-boundary-button-primary:before{content:"🔄";font-size:18px}.error-boundary-button-secondary{background:linear-gradient(135deg,var(--kaiso-neutral, #607D8B) 0%,#546E7A 100%);color:#fff!important;font-weight:600}.error-boundary-button-secondary:hover{background:linear-gradient(135deg,#546e7a,#455a64);transform:translateY(-2px);box-shadow:0 8px 20px #607d8b66}.error-boundary-button-secondary:before{content:"↻";font-size:18px;font-weight:700}.error-boundary-details{margin-top:32px;text-align:left;background:#f5f5f5;border-radius:12px;border:1px solid var(--kaiso-border, #E0E0E0);overflow:hidden}.error-boundary-details summary{font-size:16px!important;font-weight:600;color:var(--kaiso-text-secondary, #616161);padding:16px;cursor:pointer;background:#fafafa;border-bottom:1px solid var(--kaiso-border, #E0E0E0);transition:background-color .2s ease;-webkit-user-select:none;user-select:none}.error-boundary-details summary:hover{background:#f0f0f0}.error-boundary-details summary::marker{content:"▶ ";color:var(--kaiso-brand-primary, #1E88E5)}.error-boundary-details[open] summary::marker{content:"▼ "}.error-boundary-stack{font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px!important;color:#d32f2f;background:#fafafa;padding:16px;margin:0;overflow-x:auto;white-space:pre-wrap;word-break:break-word;max-height:300px;overflow-y:auto;line-height:1.4}@media (max-width: 768px){.error-boundary{padding:16px}.error-boundary-content{padding:24px;border-radius:12px}.error-boundary-title{font-size:20px!important}.error-boundary-message{font-size:16px!important;padding:16px}.error-boundary-actions{flex-direction:column;align-items:stretch;gap:12px}.error-boundary-button{width:100%;min-width:auto}}@media (max-width: 480px){.error-boundary-content{padding:20px;margin:8px}.error-boundary-title{font-size:18px!important;flex-direction:column;gap:8px}.error-boundary-title:before{font-size:24px}.error-boundary-message{padding:12px}.error-boundary-details summary{padding:12px;font-size:14px!important}.error-boundary-stack{padding:12px;font-size:12px!important;max-height:200px}}.inference-text{color:#fff!important;text-shadow:none!important}@media screen and (orientation: landscape) and (max-height: 600px){.modal-overlay{align-items:flex-start!important;padding:5px!important;justify-content:center}.modal-container{max-height:98vh!important;height:auto;margin:5px 0;overflow-y:auto}.region-picker-modal{width:95vw!important;max-width:900px;max-height:98vh!important}.region-picker-content{max-height:30vh!important;padding:10px!important;overflow-y:auto}.modal-header{padding:10px 15px!important}.modal-header h3{font-size:14px!important;padding:4px 8px!important;margin-bottom:8px!important}.selection-info{font-size:12px!important}.modal-actions{padding:10px 15px!important;flex-shrink:0}.modal-btn{height:40px!important;font-size:13px!important}.region-grid{gap:6px!important}.region-btn{padding:6px!important;font-size:11px!important;min-height:30px!important}.region-warning{padding:6px!important;font-size:11px!important}.selected-regions{margin-top:8px!important}.selected-label,.selected-list{font-size:11px!important}}@media screen and (orientation: landscape) and (max-height: 400px){.modal-overlay{padding:2px!important}.modal-container{max-height:99vh!important;margin:2px 0}.region-picker-content{max-height:25vh!important;padding:8px!important}.modal-header{padding:8px 12px!important}.modal-header h3{font-size:12px!important;padding:3px 6px!important;margin-bottom:5px!important}.modal-actions{padding:8px 12px!important}.modal-btn{height:35px!important;font-size:12px!important}.region-btn{padding:4px!important;font-size:10px!important;min-height:25px!important}}@media screen and (orientation: landscape) and (max-height: 600px){.song-list-page .search-input-group{flex-direction:row!important;gap:.5rem!important;align-items:center!important}.song-list-page .search-type-select{width:auto!important;min-width:80px!important;flex-shrink:0!important}.song-list-page .search-input{flex:1!important;width:auto!important;min-width:200px!important}.song-list-page .search-button,.song-list-page .clear-button{width:auto!important;min-width:60px!important;flex-shrink:0!important}.song-list-page .search-window{padding:.8rem 1rem!important}.song-list-page .search-form{max-width:none!important}}.groups-error-message{color:var(--kaiso-warning);padding:10px;border:1px solid var(--kaiso-warning);border-radius:5px;margin:10px 0;background-color:var(--kaiso-surface)}.groups-detail-card{border:2px solid var(--kaiso-primary);border-radius:12px;padding:20px;margin:10px 0;background-color:var(--kaiso-surface);color:var(--kaiso-text-primary)}.groups-detail-card h4,.groups-detail-card p,.groups-detail-card strong,.groups-detail-card div{color:var(--kaiso-text-primary)!important}.groups-list-item{border:1px solid var(--kaiso-border);border-radius:8px;padding:15px;margin:10px 0;background-color:var(--kaiso-surface);color:var(--kaiso-text-primary)}.groups-list-item h4,.groups-list-item p,.groups-list-item strong{color:var(--kaiso-text-primary)!important}.groups-info-section{margin-top:30px;padding:15px;background-color:var(--kaiso-card);border-radius:8px;color:var(--kaiso-text-primary);border:1px solid var(--kaiso-border)}.groups-info-section h4{color:var(--kaiso-text-primary);margin:0 0 10px}.groups-info-section ul{padding-left:20px;margin:10px 0;color:var(--kaiso-text-secondary)}.groups-page-heading,.groups-loading-text{color:var(--kaiso-text-primary)}.groups-no-groups-text{color:var(--kaiso-text-secondary)}.page-header{color:var(--kaiso-text-primary);margin-bottom:20px}.content-card{background-color:var(--kaiso-surface);padding:20px;border-radius:8px;margin-bottom:20px;border:1px solid var(--kaiso-border);color:var(--kaiso-text-primary)}.content-card h3,.content-card h4,.content-card p,.content-card div{color:var(--kaiso-text-primary)!important}.content-card-title{color:var(--kaiso-text-primary);margin-bottom:15px}.content-card-subtitle{color:var(--kaiso-text-secondary);font-size:14px}.member-item{background-color:var(--kaiso-surface);border:1px solid var(--kaiso-border);border-radius:8px;padding:15px;margin:10px 0;color:var(--kaiso-text-primary)}.member-item h4,.member-item p,.member-item div{color:var(--kaiso-text-primary)!important}.error-message{color:var(--kaiso-warning);background-color:var(--kaiso-surface);border:1px solid var(--kaiso-warning);padding:10px;border-radius:5px;margin:10px 0}.loading-message{color:var(--kaiso-text-primary);text-align:center;padding:20px}.main-demo-bottom-right-btn{position:fixed!important;bottom:30px!important;right:30px!important;width:80px!important;height:80px!important;border-radius:50%!important;background:linear-gradient(135deg,#ff6b35,#ff4500)!important;color:#fff!important;border:none!important;font-size:18px!important;font-weight:700!important;cursor:pointer!important;box-shadow:0 6px 20px #ff6b3566!important;transition:all .3s ease!important;z-index:1000!important;display:flex!important;align-items:center!important;justify-content:center!important}.main-demo-bottom-right-btn:hover{transform:translateY(-3px) scale(1.05)!important;box-shadow:0 8px 25px #ff6b3599!important;background:linear-gradient(135deg,#ff7a4a,#ff5722)!important}.main-demo-bottom-right-btn:active{transform:translateY(-1px) scale(1.02)!important;box-shadow:0 4px 15px #ff6b3580!important}.playlist-edit-button-orange{background:#ff8c00!important;background-color:#ff8c00!important;background-image:none!important;color:#fff!important;border:none!important;box-shadow:0 10px 30px #ff8c004d!important}.playlist-edit-button-orange:hover{background:#ff8c00!important;background-color:#ff8c00!important;background-image:none!important;color:#fff!important;border:none!important}.playlist-edit-button-orange:active,.playlist-edit-button-orange:focus{background:#ff8c00!important;background-color:#ff8c00!important;background-image:none!important;color:#fff!important;border:none!important}@media (max-width: 768px){.main-demo-bottom-right-btn{width:70px!important;height:70px!important;bottom:20px!important;right:20px!important;font-size:16px!important}}@media (max-width: 480px){.main-demo-bottom-right-btn{width:60px!important;height:60px!important;bottom:15px!important;right:15px!important;font-size:14px!important}}.sel-wrap{padding:24px 12px 56px;max-width:1400px;margin:0 auto;font-family:Noto Sans JP,sans-serif;background-color:var(--kaiso-background);color:var(--kaiso-text-primary);min-height:100vh}.search-container{margin:0 auto 32px;max-width:600px;width:100%}.search-input-wrapper{position:relative;display:flex;align-items:center}.search-input{width:100%;padding:16px 50px;font-size:18px!important;font-family:Noto Sans JP,sans-serif;border:2px solid var(--kaiso-border)!important;border-radius:12px;background:var(--kaiso-card)!important;color:var(--kaiso-text-primary)!important;transition:all .3s ease;box-sizing:border-box}.search-input:focus{outline:var(--kaiso-focus-ring, 4px solid var(--kaiso-primary))!important;outline-offset:var(--kaiso-focus-ring-offset, 2px)!important;border-color:var(--kaiso-primary)!important;box-shadow:0 0 0 4px #2196f333!important;transform:translateY(-1px)}.search-input::placeholder{color:#616161!important;font-style:italic;opacity:1!important}.search-icon{position:absolute;left:16px;font-size:20px;color:#757575;pointer-events:none}.search-clear-btn{position:absolute;right:12px;width:32px;height:32px;border:none;background:#ff5722;color:#fff;border-radius:50%;font-size:16px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:2}.search-clear-btn:hover{background:#d84315;transform:scale(1.1)}.search-clear-btn:focus{outline:var(--kaiso-focus-ring, 4px solid var(--kaiso-primary))!important;outline-offset:var(--kaiso-focus-ring-offset, 2px)!important}.search-results-info{margin-top:12px;padding:8px 16px;background:var(--kaiso-surface);color:var(--kaiso-text-primary);border-radius:8px;font-size:16px;font-weight:600;text-align:center;border:1px solid var(--kaiso-border)}.search-clear-btn-large{background:var(--color-info-bg)!important;color:var(--color-info-text)!important;border:none;padding:16px 24px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s ease;min-height:48px;display:flex;align-items:center;justify-content:center}.search-clear-btn-large:hover{background:var(--color-info-hover)!important;transform:translateY(-1px);box-shadow:0 4px 8px #607d8b4d}.sel-title{font-size:40px;text-align:center;margin:0 0 32px;font-weight:700;color:var(--kaiso-text-primary)}.sel-back{position:fixed;left:36px;top:36px;width:110px;cursor:pointer;-webkit-user-select:none;user-select:none;z-index:100}.user-cards-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:24px;margin-top:20px}.user-card{background:var(--kaiso-card)!important;color:var(--kaiso-text-primary)!important;border:2px solid var(--kaiso-border)!important;border-radius:var(--border-radius-lg);padding:var(--space-lg);transition:all .3s ease;position:relative;box-shadow:0 2px 8px var(--kaiso-shadow),0 1px 3px var(--kaiso-shadow)}.user-card:hover{transform:translateY(-2px);border-color:var(--kaiso-primary)!important;box-shadow:0 8px 24px var(--kaiso-shadow),0 4px 12px var(--kaiso-shadow),0 2px 6px var(--kaiso-shadow)}.user-card:focus,.primary-action-btn:focus,.details-toggle-btn:focus,.action-btn:focus{outline:var(--kaiso-focus-ring, 4px solid var(--kaiso-primary))!important;outline-offset:var(--kaiso-focus-ring-offset, 2px)!important;border-radius:8px}.user-card:focus-visible,.primary-action-btn:focus-visible,.details-toggle-btn:focus-visible,.action-btn:focus-visible{outline:var(--kaiso-focus-ring, 4px solid var(--kaiso-primary))!important;outline-offset:var(--kaiso-focus-ring-offset, 2px)!important}.user-card-header{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--kaiso-border)}.user-card-name{font-size:28px;font-weight:700;margin:0 0 12px;color:var(--kaiso-primary);text-align:center}.user-card-basic-info{display:flex;justify-content:center;gap:20px;flex-wrap:wrap}.user-info-item{font-size:16px;background:var(--kaiso-primary);color:var(--kaiso-text-button);padding:6px 12px;border-radius:20px;font-weight:600}.user-card-details{margin-bottom:24px}.user-detail-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding:12px 16px;background:var(--kaiso-surface);border:1px solid var(--kaiso-border);border-radius:8px;transition:all .2s ease}.detail-label{font-weight:700;color:var(--kaiso-text-secondary);min-width:80px}.detail-value{font-weight:500;color:var(--kaiso-text-primary);text-align:right;flex:1}.user-card-actions{display:flex;flex-direction:column;gap:16px}.action-group{border:1px solid var(--kaiso-border);border-radius:8px;padding:16px;background:var(--kaiso-background)}.action-group-title{font-size:16px;font-weight:700;margin:0 0 12px;color:var(--kaiso-text-primary);text-align:center;border-bottom:1px solid var(--kaiso-border);padding-bottom:8px}.action-buttons{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.action-btn{flex:1;min-width:100px;height:48px;border:none;border-radius:6px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;color:var(--kaiso-text-button)}.action-btn:hover:not(.btn-manage):not(.btn-edit){transform:translateY(-1px);box-shadow:0 4px 8px var(--kaiso-shadow-color, rgba(0,0,0,.2))}.action-btn.btn-recommend{background:var(--kaiso-primary)}.action-btn.btn-recommend:hover{background:var(--kaiso-primary-hover)}.action-btn.btn-liked{background:var(--color-success)}.action-btn.btn-liked:hover{opacity:.85}.action-btn.btn-news{background:var(--color-accent)}.action-btn.btn-news:hover{opacity:.85}.action-btn.btn-edit{background:var(--color-error);width:100%}.debug-info-panel{margin:10px 0;padding:16px;background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;border:1px solid var(--kaiso-border)!important;border-radius:8px;font-size:14px}.debug-details{margin-top:12px}.debug-summary{color:var(--kaiso-text-primary)!important;cursor:pointer;font-weight:600;padding:8px;background:var(--kaiso-card)!important;border:1px solid var(--kaiso-border);border-radius:4px}.debug-summary:hover{background:var(--kaiso-background)!important}.debug-preview{background:var(--kaiso-card)!important;color:var(--kaiso-text-primary)!important;border:1px solid var(--kaiso-border)!important;padding:12px;margin:8px 0;border-radius:4px;overflow:auto;max-height:200px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:12px;line-height:1.4}.no-users-message{text-align:center;padding:60px 20px;background:var(--kaiso-surface);color:var(--kaiso-text-primary);border:2px dashed var(--kaiso-border);border-radius:12px;margin-top:40px}.no-users-message p{font-size:20px;margin-bottom:24px;color:var(--kaiso-text-secondary)}.add-user-btn.btn-create{background:var(--color-create-bg);color:var(--color-create-text);border:none;padding:18px 32px;border-radius:8px;font-size:18px;font-weight:600;min-height:56px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.add-user-btn.btn-create:hover{background:var(--color-create-hover);transform:translateY(-1px);box-shadow:0 4px 8px #9c27b04d}.add-user-btn{background:var(--kaiso-primary);color:var(--kaiso-text-button);border:none;padding:16px 32px;border-radius:8px;font-size:18px;font-weight:600;cursor:pointer;transition:all .2s ease}.add-user-btn:hover{background:var(--kaiso-primary-hover);transform:translateY(-1px);box-shadow:0 4px 8px var(--kaiso-shadow-color, rgba(0,0,0,.2))}@media (max-width: 1024px){.user-cards-container{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.user-card{padding:20px}.user-card-name{font-size:24px}.sel-title{font-size:36px}}@media (max-width: 768px){.sel-wrap{padding:20px 8px 48px}.user-cards-container{grid-template-columns:1fr;gap:16px}.user-card{padding:16px}.user-card-name{font-size:22px}.user-card-basic-info{gap:12px}.action-buttons{gap:6px}.action-btn{min-width:80px;height:44px;font-size:13px}.sel-back{left:24px;top:24px;width:90px}.sel-title{font-size:32px;margin-bottom:24px}}@media (max-width: 640px){.sel-wrap{padding:16px 4px 40px}.user-card{padding:12px;border-radius:8px}.user-card-name{font-size:20px}.user-info-item{font-size:14px;padding:4px 8px}.detail-label{min-width:60px;font-size:14px}.detail-value{font-size:14px}.action-group{padding:12px}.action-group-title{font-size:14px;margin-bottom:8px}.action-btn{min-width:70px;height:40px;font-size:12px}.sel-title{font-size:28px;margin-bottom:20px}.sel-back{left:16px;top:16px;width:80px}}@media (max-width: 480px){.sel-wrap{padding:12px 2px 32px}.user-card{padding:10px;margin-bottom:12px}.user-card-header{margin-bottom:16px;padding-bottom:12px}.user-card-name{font-size:18px;margin-bottom:8px}.user-card-basic-info{flex-direction:column;gap:8px;align-items:center}.user-info-item{font-size:13px;padding:3px 6px}.user-detail-row{padding:6px 8px;margin-bottom:8px}.detail-label,.detail-value{font-size:13px}.action-group{padding:10px}.action-group-title{font-size:13px;margin-bottom:6px}.action-buttons{gap:4px}.action-btn{min-width:60px;height:36px;font-size:11px}.sel-title{font-size:24px;margin-bottom:16px}.no-users-message{padding:40px 16px}.add-user-btn{padding:12px 24px;font-size:16px}}@media (max-width: 360px){.user-cards-container{gap:12px}.user-card{padding:8px}.user-card-name{font-size:16px}.user-info-item{font-size:12px;padding:2px 4px}.action-btn{min-width:50px;height:32px;font-size:10px}.sel-title{font-size:20px}.sel-back{width:60px;left:8px;top:8px}}.user-card-basic{display:flex;flex-direction:column;gap:16px}.user-card-name{font-size:24px;font-weight:700;margin:0;color:var(--kaiso-text-primary);text-align:center}.user-card-badges{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.user-badge{background:var(--kaiso-surface-elevated);color:var(--kaiso-text-secondary);padding:var(--space-sm) var(--space-md);border-radius:var(--border-radius-full);font-size:16px;font-weight:var(--font-weight-semibold);border:1px solid var(--kaiso-border);min-height:36px;display:flex;align-items:center;justify-content:center}.gender-badge.male{background:#1976d2!important;color:#fff!important;border:2px solid #0D47A1!important;font-weight:700!important;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.gender-badge.female{background:#c2185b!important;color:#fff!important;border:2px solid #880E4F!important;font-weight:700!important;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.gender-badge.other{background:#7b1fa2!important;color:#fff!important;border:2px solid #4A148C!important;font-weight:700!important;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.gender-badge{background:var(--kaiso-info-bg);color:var(--kaiso-info)}.age-badge{background:#1b5e20!important;color:#fff!important;border:2px solid #0D4213!important;font-weight:700!important;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.primary-action-btn{background:var(--gradient-primary);color:#fff;border:none;padding:var(--space-md) var(--space-lg);border-radius:var(--border-radius-md);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);cursor:pointer;transition:var(--transition-medium);margin:var(--space-sm) 0;box-shadow:var(--shadow-md)}.primary-action-btn.btn-play{background:var(--gradient-play)}.primary-action-btn.btn-play:hover{background:var(--gradient-play-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.primary-action-btn:hover{background:var(--gradient-primary-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.details-toggle-btn{background:linear-gradient(135deg,#6c757d,#495057)!important;color:#fff!important;border:2px solid #495057!important;padding:12px 16px;border-radius:8px;font-size:16px;font-weight:700!important;min-height:48px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;gap:8px;text-shadow:1px 1px 2px rgba(0,0,0,.3);box-shadow:0 4px 8px #6c757d4d}.details-toggle-btn:hover{background:linear-gradient(135deg,#5a6268,#343a40)!important;border-color:#343a40!important;transform:translateY(-2px);box-shadow:0 6px 12px #6c757d66!important}.user-card-details-expanded{margin-top:var(--space-lg);padding:var(--space-lg);border-top:1px solid var(--kaiso-border);background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;border-radius:var(--border-radius-md);animation:slideDown .3s ease-in-out;border:1px solid var(--kaiso-border)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px);max-height:0}to{opacity:1;transform:translateY(0);max-height:1000px}}.profile-details{background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;border-radius:var(--border-radius-md);padding:var(--space-md);margin-bottom:var(--space-lg);border:1px solid var(--kaiso-border);box-shadow:0 2px 4px var(--kaiso-shadow)}.user-detail-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--kaiso-border)}.user-detail-row:last-child{border-bottom:none}.detail-label{font-weight:600;color:var(--kaiso-text-secondary);min-width:80px}.detail-value{color:var(--kaiso-text-primary);text-align:right;flex:1;margin-left:16px}.additional-actions{display:flex;flex-direction:column;gap:var(--space-md)}.action-section{background:var(--kaiso-card)!important;color:var(--kaiso-text-primary)!important;border-radius:var(--border-radius-md);padding:var(--space-md);border:1px solid var(--kaiso-border);box-shadow:0 2px 4px var(--kaiso-shadow)}.action-section-title{font-size:16px;font-weight:600;margin:0 0 12px;color:var(--kaiso-text-primary);text-align:center}.action-buttons-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}.action-btn.btn-secondary{background:var(--kaiso-surface);color:var(--kaiso-text-primary);border:1px solid var(--kaiso-border);padding:10px 16px;border-radius:6px;font-size:14px;cursor:pointer;transition:all .2s ease}.action-btn.btn-secondary:hover{background:var(--kaiso-brand-secondary);color:#fff;border-color:var(--kaiso-brand-secondary)}.action-btn.btn-play-secondary{background:var(--color-play-bg);color:var(--color-play-text);border:1px solid var(--color-play-bg);padding:12px 20px;border-radius:6px;font-size:16px;min-height:48px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.action-btn.btn-play-secondary:hover{background:var(--color-play-hover);border-color:var(--color-play-hover);transform:translateY(-1px);box-shadow:0 4px 8px #4caf504d}.action-btn.btn-info{background:var(--color-info-bg);color:var(--color-info-text);border:1px solid var(--color-info-bg);padding:12px 20px;border-radius:6px;font-size:16px;min-height:48px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.action-btn.btn-info:hover{background:var(--color-info-hover);border-color:var(--color-info-hover);transform:translateY(-1px);box-shadow:0 4px 8px #607d8b4d}.action-btn.btn-manage,button.action-btn.btn-manage,.action-buttons-grid .action-btn.btn-manage{background:#ff9800!important;background-color:#ff9800!important;color:#fff!important;border:none!important;padding:16px 24px;border-radius:6px;font-size:16px;font-weight:600;min-height:48px;cursor:pointer;transition:none!important;width:100%;display:flex;align-items:center;justify-content:center}.action-btn.btn-manage:hover,button.action-btn.btn-manage:hover,.action-buttons-grid .action-btn.btn-manage:hover{background:#2196f3!important;background-color:#2196f3!important;transform:none!important;box-shadow:0 2px 4px #2196f333!important}.action-btn.btn-edit{background:#ff9800!important;color:#fff!important;border:none;padding:12px 24px;border-radius:6px;font-size:16px;font-weight:600;cursor:pointer;transition:none!important;width:100%}.action-btn.btn-edit:hover,button.action-btn.btn-edit:hover,.action-buttons-grid .action-btn.btn-edit:hover{background:#2196f3!important;background-color:#2196f3!important;color:#fff!important;transform:none!important;box-shadow:0 2px 4px #2196f333!important}.action-btn.btn-edit:hover{background:#2196f3!important;transform:none!important;box-shadow:0 2px 4px #2196f333!important}@media (max-width: 768px){.user-card-basic{gap:12px}.user-card-name{font-size:20px}.primary-action-btn{padding:14px 20px;font-size:16px}.details-toggle-btn{padding:10px 14px;font-size:13px}.action-buttons-grid{grid-template-columns:1fr;gap:6px}}@media (max-width: 480px){.user-card-badges{flex-direction:column;align-items:center;gap:8px}.user-badge{padding:4px 8px;font-size:12px}.primary-action-btn{padding:12px 16px;font-size:14px}.user-detail-row{flex-direction:column;align-items:flex-start;gap:4px}.detail-value{text-align:left;margin-left:0}}.free-browse-page{min-height:100vh;background-color:var(--kaiso-background);color:var(--kaiso-text-primary);padding:0}.header{background-color:var(--kaiso-surface);color:var(--kaiso-text-primary);padding:1rem;box-shadow:0 2px 4px var(--kaiso-shadow);display:flex;align-items:center;position:relative}.page-title{font-size:1.5rem;font-weight:700;color:var(--kaiso-text-primary);margin:0;text-align:center;flex:1}.category-grid{padding:1.5rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;max-width:800px;margin:0 auto}.season-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.category-button{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem 1rem;border:2px solid rgba(255,255,255,.3);border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);min-height:120px;color:#fff;font-weight:600;text-shadow:1px 1px 2px rgba(0,0,0,.5);position:relative;overflow:hidden;box-shadow:0 6px 16px #0003,0 0 0 1px #ffffff1a inset,0 1px #ffffff4d inset}.category-music{background:linear-gradient(135deg,#ff9800,#f57c00);border-color:#e65100}.category-music:hover{background:linear-gradient(135deg,#ffb74d,#ff9800);transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #ff98004d,0 0 0 1px #fff3 inset,0 2px #fff6 inset}.category-news{background:linear-gradient(135deg,#2196f3,#1976d2);border-color:#0d47a1}.category-news:hover{background:linear-gradient(135deg,#42a5f5,#2196f3);transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #2196f34d,0 0 0 1px #fff3 inset,0 2px #fff6 inset}.category-movie{background:linear-gradient(135deg,#795548,#5d4037);border-color:#3e2723}.category-movie:hover{background:linear-gradient(135deg,#8d6e63,#795548);transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #7955484d,0 0 0 1px #fff3 inset,0 2px #fff6 inset}.category-season{background:linear-gradient(135deg,#4caf50,#388e3c);border-color:#1b5e20}.category-season:hover{background:linear-gradient(135deg,#66bb6a,#4caf50);transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #4caf504d,0 0 0 1px #fff3 inset,0 2px #fff6 inset}.category-special{background:linear-gradient(135deg,#e91e63,#c2185b);border-color:#880e4f}.category-special:hover{background:linear-gradient(135deg,#f06292,#e91e63);transform:translateY(-4px) scale(1.02);box-shadow:0 12px 32px #e91e634d,0 0 0 1px #fff3 inset,0 2px #fff6 inset}.category-button:active{transform:translateY(-1px) scale(.98);box-shadow:0 4px 12px #0000004d,0 0 0 1px #0000001a inset,0 2px 4px #0003 inset;transition:all .1s ease}.category-icon{font-size:2rem;margin-bottom:.5rem;display:block}.category-label{font-size:.9rem;text-align:center;line-height:1.2;word-break:break-word}@media (max-width: 768px){.category-grid{grid-template-columns:repeat(2,1fr);padding:1rem;gap:.8rem}.season-row{grid-template-columns:repeat(2,1fr)}.category-button{min-height:100px;padding:1rem .5rem}.category-icon{font-size:1.5rem}.category-label{font-size:.8rem}.page-title{font-size:1.2rem}}@media (max-width: 480px){.category-grid{grid-template-columns:1fr;gap:.5rem}.season-row{grid-template-columns:repeat(4,1fr);gap:.3rem}.season-row .category-button{padding:.5rem .2rem;min-height:60px}.season-row .category-icon{font-size:1.2rem;margin-bottom:.2rem}.season-row .category-label{font-size:.6rem}.category-button{min-height:80px;padding:.8rem .5rem}.header{padding:.8rem}}.category-button:focus{outline:3px solid #007bff;outline-offset:2px}@media (prefers-color-scheme: dark){.free-browse-page{background-color:#1a1a1a}.header{background-color:#2d2d2d}.page-title{color:#fff}.back-button{color:#66b3ff}.back-button:hover{color:#4da6ff}}.song-list-page{min-height:100vh;background-color:var(--kaiso-background);color:var(--kaiso-text-primary);padding:0}.header{background-color:var(--kaiso-surface);color:var(--kaiso-text-primary);padding:1rem;box-shadow:0 2px 4px var(--kaiso-shadow);display:flex;align-items:center;position:sticky;top:0;z-index:100}.back-button{background:none;border:none;color:var(--kaiso-primary);font-size:1rem;cursor:pointer;padding:.5rem;margin-right:1rem}.back-button:hover{color:var(--kaiso-secondary)}.page-title{font-size:1.3rem;font-weight:700;color:var(--kaiso-text-primary);margin:0;flex:1}.search-window{background-color:var(--kaiso-surface);color:var(--kaiso-text-primary);padding:1rem;border-bottom:1px solid var(--kaiso-border);position:sticky;top:70px;z-index:90}.search-form{max-width:800px;margin:0 auto}.search-input-group{display:flex;gap:.5rem;align-items:center;flex-wrap:nowrap;width:100%}.search-type-select{padding:.5rem;border:1px solid var(--kaiso-border);border-radius:4px;background-color:var(--kaiso-surface);color:var(--kaiso-text-primary);font-size:.9rem;min-width:80px}.search-input{flex:1;padding:.5rem;border:1px solid var(--kaiso-border);border-radius:4px;background-color:var(--kaiso-surface);color:var(--kaiso-text-primary);font-size:1rem;min-width:150px;box-sizing:border-box}.search-input:focus{outline:none;border-color:var(--kaiso-primary);box-shadow:0 0 0 2px var(--kaiso-primary-alpha)}.search-button,.clear-button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer;font-size:.9rem;font-weight:700}.search-button{background-color:var(--kaiso-primary);color:var(--kaiso-on-primary)}.search-button:hover{background-color:var(--kaiso-primary-hover)}.clear-button{background-color:var(--kaiso-error);color:var(--kaiso-on-error)}.clear-button:hover{background-color:#c82333}.content{padding:1rem;max-width:800px;margin:0 auto}.loading{text-align:center;padding:3rem 1rem}.loading-spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #007bff;border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.error{text-align:center;padding:2rem 1rem;color:var(--kaiso-error)!important}.retry-button{padding:.5rem 1rem;background-color:var(--kaiso-primary)!important;color:var(--kaiso-on-primary)!important;border:none;border-radius:4px;cursor:pointer;margin-top:1rem}.retry-button:hover{background-color:var(--kaiso-primary-hover)!important}.no-results{text-align:center;padding:3rem 1rem;color:var(--kaiso-text-secondary)!important}.results-info{margin-bottom:1rem;color:var(--kaiso-text-secondary)!important;font-size:.9rem}.song-list{display:flex;flex-direction:column;gap:.5rem}.song-item{background-color:var(--kaiso-surface);border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px var(--kaiso-shadow);cursor:pointer;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center;min-height:200px}.song-item:hover{box-shadow:0 2px 6px var(--kaiso-shadow-hover);transform:translateY(-1px)}.song-thumbnail{width:160px;height:160px;margin-right:1.5rem;flex-shrink:0}.song-thumbnail img{width:100%;height:100%;object-fit:cover;border-radius:4px;box-shadow:0 1px 3px #0003}.song-info{flex:1}.song-title{font-size:1.3rem;font-weight:700;color:var(--kaiso-text-primary);margin:0 0 .5rem;line-height:1.3}.song-artist{color:var(--kaiso-text-secondary);font-size:1.1rem;margin:0 0 .5rem;font-weight:500}.song-album{color:var(--kaiso-text-tertiary);font-size:.8rem;margin:0 0 .25rem}.song-year{color:var(--kaiso-text-tertiary);font-size:.8rem;margin:0 0 .5rem}.song-tags{display:flex;flex-wrap:wrap;gap:.25rem}.song-tag{background-color:var(--kaiso-tag-bg);color:var(--kaiso-tag-text);padding:.2rem .5rem;border-radius:12px;font-size:.7rem;font-weight:700}.song-actions{margin-left:1rem}.play-button{background-color:var(--kaiso-success);color:var(--kaiso-on-success);border:none;border-radius:50%;width:40px;height:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;transition:background-color .2s ease}.play-button:hover{background-color:#218838}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:2rem;padding:1rem}.page-button{padding:.5rem 1rem;background-color:#007bff;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:.9rem}.page-button:hover:not(:disabled){background-color:#0056b3}.page-button:disabled{background-color:#ccc;cursor:not-allowed}.page-info{color:var(--kaiso-text-secondary)!important;font-size:.9rem}@media screen and (orientation: landscape){.search-input-group{flex-direction:row!important;gap:.4rem!important;align-items:center!important;flex-wrap:nowrap!important;width:100%!important}.search-type-select{width:auto!important;min-width:70px!important;max-width:90px!important;flex-shrink:0!important}.search-input{flex:1!important;width:auto!important;min-width:150px!important}.search-button,.clear-button{width:auto!important;min-width:50px!important;max-width:70px!important;flex-shrink:0!important;padding:.4rem .6rem!important;font-size:.85rem!important;white-space:nowrap!important}}@media screen and (max-width: 768px) and (orientation: portrait){.search-input-group{flex-direction:column!important;gap:.5rem!important}.search-type-select,.search-input,.search-button,.clear-button{width:100%!important;max-width:none!important}}@media screen and (orientation: landscape){.search-input-group{flex-direction:row!important;gap:.4rem!important;align-items:center!important;width:100%!important;flex-wrap:nowrap!important}.search-type-select{width:auto!important;min-width:70px!important;max-width:90px!important;flex-shrink:0!important}.search-input{flex:1!important;width:auto!important;min-width:150px!important;max-width:none!important}.search-button,.clear-button{width:auto!important;min-width:50px!important;max-width:70px!important;flex-shrink:0!important;padding:.4rem .6rem!important;font-size:.85rem!important;white-space:nowrap!important}.search-window{padding:.6rem 1rem!important}.search-form{max-width:none!important;width:100%!important}}@media (max-width: 480px){.header,.search-window,.content{padding:.8rem}.song-item{padding:.8rem;flex-direction:column;align-items:flex-start}.song-actions{margin-left:0;margin-top:.5rem;align-self:flex-end}.song-title{font-size:1rem}.page-title{font-size:1.1rem}}.song-item:focus{outline:3px solid #007bff;outline-offset:2px}.play-button:focus{outline:3px solid #28a745;outline-offset:2px}@media (prefers-color-scheme: dark){.song-list-page{background-color:#1a1a1a}.header,.search-window{background-color:#2d2d2d}.page-title{color:#fff}.back-button{color:#66b3ff}.back-button:hover{color:#4da6ff}.song-item{background-color:#2d2d2d}.song-title{color:#fff}.song-artist{color:var(--kaiso-text-secondary)!important}.song-album,.song-year{color:var(--kaiso-text-tertiary)!important}.search-input,.search-type-select{background-color:#2d2d2d;color:#fff;border-color:#555}}.admin-panel{min-height:100vh;background:var(--kaiso-bg-primary)!important;color:var(--kaiso-text-primary)!important;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.admin-header{background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;padding:20px;box-shadow:0 2px 10px var(--kaiso-shadow);display:flex;justify-content:space-between;align-items:center}.admin-header h1{margin:0;color:var(--kaiso-text-primary)!important;font-size:24px}.back-button{background:var(--kaiso-button-secondary)!important;color:var(--kaiso-text-button)!important;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;transition:background .3s}.back-button:hover{background:var(--kaiso-button-secondary-hover)!important}.admin-nav{background:var(--kaiso-surface)!important;padding:0;display:flex;box-shadow:0 2px 5px var(--kaiso-shadow)}.admin-nav button{flex:1;padding:15px 20px;border:none;background:transparent;color:var(--kaiso-text-primary)!important;cursor:pointer;font-size:16px;transition:all .3s;border-bottom:3px solid transparent}.admin-nav button:hover{background:var(--kaiso-hover)!important}.admin-nav button.active{background:var(--kaiso-primary-opacity)!important;border-bottom-color:var(--kaiso-primary)!important;font-weight:700}.admin-content{padding:30px;max-width:1200px;margin:0 auto}.admin-loading,.admin-error{text-align:center;padding:50px;background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;margin:50px;border-radius:10px;box-shadow:0 4px 15px var(--kaiso-shadow)}.loading{text-align:center;padding:20px;color:var(--kaiso-text-secondary)!important}.settings-management{background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;border-radius:10px;padding:30px;box-shadow:0 4px 15px var(--kaiso-shadow)}.settings-management h2{margin-bottom:20px;color:var(--kaiso-text-primary)!important;border-bottom:2px solid var(--kaiso-primary)!important;padding-bottom:10px}.category-tabs{display:flex;margin-bottom:30px;background:var(--kaiso-bg-secondary)!important;border-radius:8px;padding:4px;gap:4px}.category-tab{flex:1;padding:12px 20px;border:none;background:transparent;color:var(--kaiso-text-secondary)!important;cursor:pointer;border-radius:6px;font-size:14px;font-weight:500;transition:all .3s ease}.category-tab:hover{background:var(--kaiso-hover)!important;color:var(--kaiso-text-primary)!important}.category-tab.active{background:var(--kaiso-primary)!important;color:var(--kaiso-text-button)!important;font-weight:700;transform:translateY(-1px);box-shadow:0 2px 8px var(--kaiso-shadow)}.no-settings{text-align:center;padding:40px;color:var(--kaiso-text-secondary)!important;font-style:italic;background:var(--kaiso-bg-secondary)!important;border-radius:8px}.settings-grid{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.setting-item{background:var(--kaiso-bg-secondary)!important;border:1px solid var(--kaiso-border)!important;color:var(--kaiso-text-primary)!important;border-radius:8px;padding:20px;transition:box-shadow .3s}.setting-item:hover{box-shadow:0 2px 10px var(--kaiso-shadow)}.setting-label{display:block;font-weight:700;margin-bottom:10px;color:var(--kaiso-text-primary)!important}.setting-control{display:flex;align-items:center;gap:10px;margin-bottom:10px}.setting-control input,.setting-control select{flex:1;padding:8px 12px;border:1px solid var(--kaiso-border)!important;background:var(--kaiso-input-bg)!important;color:var(--kaiso-text-primary)!important;border-radius:4px;font-size:14px}.setting-control input:focus,.setting-control select:focus{outline:none;border-color:var(--kaiso-primary)!important;box-shadow:0 0 0 2px var(--kaiso-primary-opacity)}.toggle{position:relative;display:inline-block;width:50px;height:24px}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--kaiso-border)!important;transition:.4s;border-radius:24px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:var(--kaiso-text-button)!important;transition:.4s;border-radius:50%}.toggle input:checked+.toggle-slider{background-color:var(--kaiso-primary)!important}.toggle input:checked+.toggle-slider:before{transform:translate(26px)}.setting-info{font-size:12px;color:#6c757d;margin-top:5px}.saving{color:#ffc107;font-size:12px}.user-management{background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;border-radius:10px;padding:30px;box-shadow:0 4px 15px var(--kaiso-shadow)}.user-management h2{margin-bottom:30px;color:var(--kaiso-text-primary)!important;border-bottom:2px solid var(--kaiso-primary)!important;padding-bottom:10px}.search-form{display:flex;gap:10px;margin-bottom:20px}.search-input{flex:1;padding:10px 15px;border:1px solid var(--kaiso-border)!important;background:var(--kaiso-input-bg)!important;color:var(--kaiso-text-primary)!important;border-radius:5px;font-size:14px}.search-input::placeholder{color:var(--kaiso-text-secondary)!important;opacity:.8!important}[data-theme=light] .search-input::placeholder{color:#666!important;opacity:1!important}[data-theme=dark] .search-input::placeholder{color:#ccc!important;opacity:.9!important}[data-theme=high-contrast] .search-input::placeholder{color:#fff!important;opacity:.8!important}.search-button{background:var(--kaiso-primary)!important;color:var(--kaiso-text-button)!important;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;transition:background .3s}.search-button:hover{background:var(--kaiso-primary-hover)!important}.user-table-container{overflow-x:auto;margin-bottom:20px}.user-table{width:100%;border-collapse:collapse;background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important}.user-table th,.user-table td{padding:12px;text-align:left;border-bottom:1px solid var(--kaiso-border)!important;color:var(--kaiso-text-primary)!important}.user-table th{background:var(--kaiso-bg-secondary)!important;font-weight:700;color:var(--kaiso-text-primary)!important}.user-table tr:hover{background:var(--kaiso-hover)!important}.user-table tr.inactive{opacity:.6}.status.active{color:var(--kaiso-success)!important}.status.inactive{color:var(--kaiso-error)!important}.permissions{display:flex;gap:5px;flex-wrap:wrap}.badge{padding:2px 8px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase}.badge.superuser{background:var(--kaiso-error)!important;color:var(--kaiso-text-button)!important}.badge.staff{background:var(--kaiso-warning)!important;color:var(--kaiso-text-primary)!important}.badge.normal{background:var(--kaiso-text-secondary)!important;color:var(--kaiso-text-button)!important}.pagination{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:20px}.pagination-button{background:var(--kaiso-primary)!important;color:var(--kaiso-text-button)!important;border:none;padding:10px 20px;border-radius:5px;cursor:pointer;transition:background .3s}.pagination-button:hover:not(:disabled){background:var(--kaiso-primary-hover)!important}.pagination-button:disabled{background:var(--kaiso-text-secondary)!important;cursor:not-allowed}.pagination-info{font-weight:700;color:var(--kaiso-text-primary)!important}.history-management{background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important;border-radius:10px;padding:30px;box-shadow:0 4px 15px var(--kaiso-shadow)}.history-management h2{margin-bottom:30px;color:var(--kaiso-text-primary)!important;border-bottom:2px solid var(--kaiso-primary)!important;padding-bottom:10px}.history-table-container{overflow-x:auto}.history-table{width:100%;border-collapse:collapse;background:var(--kaiso-surface)!important;color:var(--kaiso-text-primary)!important}.history-table th,.history-table td{padding:12px;text-align:left;border-bottom:1px solid var(--kaiso-border)!important;color:var(--kaiso-text-primary)!important}.history-table th{background:var(--kaiso-bg-secondary)!important;font-weight:700;color:var(--kaiso-text-primary)!important}.history-table tr:hover{background:var(--kaiso-hover)!important}.old-value{color:var(--kaiso-error)!important;text-decoration:line-through}.new-value{color:var(--kaiso-success)!important;font-weight:700}.no-data{text-align:center;padding:40px;color:var(--kaiso-text-secondary)!important;font-style:italic}@media (max-width: 768px){.admin-panel{font-size:14px}.admin-header{padding:15px;flex-direction:column;gap:10px}.admin-nav{flex-direction:column}.admin-content{padding:20px}.settings-grid{grid-template-columns:1fr}.search-form{flex-direction:column}.user-table,.history-table{font-size:12px}.user-table th,.user-table td,.history-table th,.history-table td{padding:8px 4px}.pagination{flex-direction:column;gap:10px}}:root{--bg: #efefef;--panel: #ffffff;--text: #111;--blue: #0d7aa3;--orange: #c94712;--orange-dark: #8f2e05;--green: #0c7b3e;--green-dark: #064d26;--shadow: 0 10px 0 rgba(0,0,0,.25)}*{box-sizing:border-box}.image-upload-body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,Hiragino Kaku Gothic ProN,Hiragino Sans,Noto Sans JP,Meiryo,MS PGothic,sans-serif;min-height:100vh}.stage{max-width:940px;margin:16px auto;padding:24px;background:var(--panel);border-radius:18px;box-shadow:0 2px 6px #0000000f}.header{display:flex;align-items:center;gap:24px;margin-bottom:32px}.back{display:inline-flex;align-items:center;justify-content:center;width:auto;height:50px;background:#1583b5;color:#fff;border-radius:25px;font-weight:700;font-size:16px;text-decoration:none;box-shadow:0 4px #0b5676;border:2px solid rgba(255,255,255,.55);cursor:pointer;padding:0 16px;white-space:nowrap;min-width:fit-content}.title{font-size:36px;font-weight:800;letter-spacing:.02em;margin:0}.upload-area{border:3px dashed #ddd;border-radius:12px;padding:40px;text-align:center;margin:32px 0;background:#f9f9f9;transition:border-color .3s ease;cursor:pointer}.upload-area.dragover{border-color:var(--blue);background:#f0f8ff}.file-input{display:none}.file-label{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;background:var(--blue);color:#fff;border-radius:8px;cursor:pointer;font-size:18px;font-weight:700;margin:16px 8px;transition:background .2s ease}.file-label:hover{background:#0a5a7a}.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;border-radius:16px;color:#fff;text-decoration:none;line-height:1.25;padding:20px 32px;box-shadow:var(--shadow);position:relative;transition:transform .05s ease-in-out,box-shadow .05s ease-in-out;-webkit-user-select:none;user-select:none;border:none;cursor:pointer;font-size:20px;font-weight:900;margin-right:16px;margin-bottom:16px}.btn:active{transform:translateY(3px);box-shadow:0 7px #00000040}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-green{background:var(--green);box-shadow:0 12px 0 var(--green-dark)}.btn-orange{background:var(--orange);box-shadow:0 12px 0 var(--orange-dark)}.btn-blue{background:var(--blue);box-shadow:0 12px #0b5676}.button-container{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.preview-container{margin:24px 0;text-align:center}.preview-image{max-width:100%;max-height:400px;border-radius:12px;box-shadow:0 4px 8px #0000001a}.file-info{margin:16px 0;padding:12px;background:#f0f0f0;border-radius:8px;font-size:14px;color:#666}.messages{margin:16px 0}.message{padding:12px 16px;border-radius:8px;margin-bottom:8px}.message.success{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.message.error{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.loading-popup-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-popup{background:var(--panel, #ffffff);border-radius:16px;box-shadow:0 20px 40px #00000026;max-width:350px;width:90%;max-height:80vh;overflow:hidden;animation:popupSlideIn .4s cubic-bezier(.34,1.56,.64,1)}@keyframes popupSlideIn{0%{transform:translateY(-50px) scale(.8);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.popup-header{background:linear-gradient(135deg,var(--blue, #0d7aa3),#64b5f6);color:#fff;padding:20px;text-align:center}.popup-header h3{margin:0;font-size:20px;font-weight:600}.popup-body{padding:30px 20px;text-align:center}.status-text{margin:15px 0;color:#666;font-size:16px;font-weight:500}.loading-spinner{width:50px;height:50px;border:4px solid #ddd;border-top:4px solid var(--blue);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.progress-container{margin-top:25px;width:100%}.progress-bar{width:100%;height:10px;background:#0000001a;border-radius:5px;overflow:hidden;margin-bottom:12px;box-shadow:inset 0 2px 4px #0000001a}.progress-fill{height:100%;background:linear-gradient(90deg,#4caf50,#66bb6a);border-radius:5px;transition:width .4s cubic-bezier(.25,.46,.45,.94);position:relative;box-shadow:0 2px 4px #4caf504d}.progress-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.progress-text{text-align:center;font-size:16px;color:#333;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.1)}@media (max-width: 900px){.title{font-size:28px}.back{height:42px;font-size:14px;padding:0 12px;border-radius:21px}.btn{font-size:18px;padding:16px 24px;margin-right:8px}.upload-area{padding:24px}.button-container{gap:12px}}.groups-wrap{padding:24px 12px 56px;max-width:1400px;margin:0 auto;font-family:Noto Sans JP,sans-serif;background-color:red!important;color:#fff!important;min-height:100vh}.sel-back{position:absolute;top:20px;left:20px;width:48px;height:48px;cursor:pointer;z-index:100}@media (max-width: 768px){.groups-wrap{padding:20px 8px 48px}}@media (max-width: 640px){.groups-wrap{padding:16px 4px 40px}}@media (max-width: 480px){.groups-wrap{padding:12px 2px 32px}}
