@import"https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&family=BIZ+UDMincho:wght@400;700&family=Noto+Sans+JP:wght@300;400;500;600;700;800&display=swap";/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}*{box-sizing:border-box}body{margin:0;padding:0;min-width:320px;font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"palt" 1;line-height:1.7;letter-spacing:.02em;font-optical-sizing:auto;text-rendering:optimizeLegibility}h1,h2,h3,h4,h5,h6{font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;font-weight:700;line-height:1.4;letter-spacing:.01em}p,span,div,button,input,textarea,select{font-family:inherit}.small-text,small{font-size:.875rem;line-height:1.6;letter-spacing:.025em}input,textarea,select{font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif;line-height:1.5}#root{min-height:100vh}.App{max-width:1200px;margin:0 auto;padding:20px;font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.App-header{text-align:center;margin-bottom:30px}.App-header h1{color:#2c3e50;margin-bottom:20px;font-size:2.5rem}.navigation{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.nav-button{padding:10px 20px;border:2px solid #3498db;background:white;color:#3498db;border-radius:25px;cursor:pointer;transition:all .3s ease;font-weight:500}.nav-button:hover{background:#3498db;color:#fff}.nav-button.active{background:#2980b9;color:#fff;border-color:#2980b9}.main-content{margin-top:30px}.content-section{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:40px;margin:20px 0;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.2);text-align:center}.content-section h2{color:#2d3748;margin-bottom:30px;font-size:2rem;font-weight:600}.quick-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:30px}.action-card{background:rgba(255,255,255,.9);color:#2d3748;border:none;border-radius:16px;padding:32px 24px;cursor:pointer;transition:all .4s cubic-bezier(.4,0,.2,1);text-align:left;position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #00000014}.action-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transform:scaleX(0);transition:transform .3s ease}.action-card:hover:before{transform:scaleX(1)}.action-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #667eea33;background:rgba(255,255,255,1)}.action-card:disabled{opacity:.6;transform:none!important;cursor:not-allowed}.action-card h3{margin:0 0 12px;font-size:1.5rem;font-weight:600;display:flex;align-items:center;gap:12px}.action-card p{margin:0;color:#718096;font-size:.95rem;line-height:1.6}.feature-locked{position:absolute;top:16px;right:16px;background:rgba(255,107,107,.1);color:#e53e3e;padding:6px 12px;border-radius:20px;font-size:.8rem;font-weight:500}.access-denied{text-align:center;padding:60px 40px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 8px 32px #0000001a}.access-denied h2{color:#e53e3e;margin-bottom:20px;font-size:1.8rem}.access-denied p{color:#718096;margin-bottom:16px;line-height:1.6}.loading{text-align:center;padding:60px;color:#718096;font-size:1.1rem;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 8px 32px #0000001a}.primary-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:1rem;margin:10px}.secondary-button{background:#95a5a6;color:#fff;border:none;padding:12px 24px;border-radius:25px;cursor:pointer;font-size:16px;margin:10px;transition:background .3s ease}.secondary-button:hover{background:#7f8c8d}.progress-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-top:20px}.stat-item{background:white;padding:20px;border-radius:10px;box-shadow:0 2px 10px #0000001a}.stat-item h3{color:#2c3e50;margin:0 0 10px}.stat-value{font-size:1.5rem;font-weight:700;color:#27ae60;margin-bottom:5px}.stat-detail{color:#7f8c8d;font-size:.9rem}.chat-container{max-width:600px;margin:0 auto;background:white;border-radius:15px;padding:20px;box-shadow:0 4px 15px #0000001a}.chat-messages{height:400px;overflow-y:auto;margin-bottom:20px;padding:10px;scroll-behavior:smooth}.message{margin:10px 0;display:flex;flex-direction:column}.message-content{max-width:70%;padding:12px 16px;border-radius:15px;word-wrap:break-word;position:relative}.message.user .message-content{background:#3498db;color:#fff;border-bottom-right-radius:5px}.message.bot .message-content{background:#ecf0f1;color:#2c3e50;border-bottom-left-radius:5px}.message-time{font-size:.75rem;color:#95a5a6;margin-top:4px;margin-left:8px;margin-right:8px}.message-content.loading{background:#f8f9fa!important;padding:15px 20px}.typing-indicator{display:flex;align-items:center;gap:4px}.typing-indicator span{height:8px;width:8px;background:#95a5a6;border-radius:50%;animation:typingPulse 1.4s infinite ease-in-out}.typing-indicator span:nth-child(1){animation-delay:-.32s}.typing-indicator span:nth-child(2){animation-delay:-.16s}@keyframes typingPulse{0%,80%,to{transform:scale(.8);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-input:disabled,.primary-button:disabled{opacity:.6;cursor:not-allowed}.chat-input-form{display:flex;gap:10px}.chat-input{flex:1;padding:12px 16px;border:2px solid #bdc3c7;border-radius:25px;outline:none;font-size:16px}.chat-input:focus{border-color:#3498db}.meditation-active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:40px;border-radius:15px;margin:20px auto;max-width:300px}.timer-display{font-size:3rem;font-weight:700;margin-bottom:20px}.meditation-options{display:flex;gap:15px;justify-content:center;flex-wrap:wrap}.journal-container{max-width:600px;margin:0 auto}.journal-textarea{width:100%;padding:15px;border:2px solid #bdc3c7;border-radius:10px;font-size:16px;line-height:1.5;resize:vertical;outline:none;margin-bottom:15px}.journal-textarea:focus{border-color:#3498db}.journal-actions{display:flex;gap:10px;justify-content:center}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:20px}.login-container{background:white;border-radius:20px;padding:40px;box-shadow:0 20px 40px #0000001a;max-width:400px;width:100%}.login-header{text-align:center;margin-bottom:30px}.login-header h1{margin:0 0 10px;color:#2c3e50;font-size:2.5rem}.auth-card h2{text-align:center;color:#2c3e50;margin-bottom:30px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:5px;color:#2c3e50;font-weight:500}.form-group input{width:100%;padding:12px 15px;border:2px solid #bdc3c7;border-radius:10px;font-size:16px;transition:border-color .3s ease;box-sizing:border-box}.form-group input:focus{border-color:#3498db;outline:none}.full-width{width:100%}.auth-switch{text-align:center;margin-top:20px}.link-button{background:none;border:none;color:#3498db;text-decoration:underline;cursor:pointer;font-size:inherit}.demo-info{background:#f8f9fa;padding:15px;border-radius:10px;margin-top:20px;font-size:14px;color:#666}.mypage-container{min-height:100vh;background:#f8f9fa}.mypage-header{display:flex;justify-content:space-between;align-items:center;background:white;padding:15px 30px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.mypage-navigation{display:flex;justify-content:center;gap:10px;margin-bottom:30px;flex-wrap:wrap;padding:0 20px}.mypage-content{max-width:1200px;margin:0 auto;padding:0 20px}.admin-page{min-height:100vh;background:#f8f9fa}.admin-header{display:flex;justify-content:space-between;align-items:center;background:white;padding:15px 30px;box-shadow:0 2px 10px #0000001a;margin-bottom:20px}.admin-navigation{display:flex;justify-content:center;gap:10px;margin-bottom:30px;flex-wrap:wrap;padding:0 20px}.admin-content{max-width:1200px;margin:0 auto;padding:0 20px}.admin-section{background:white;padding:30px;border-radius:15px;box-shadow:0 2px 10px #0000001a}.admin-section h2{color:#2c3e50;margin-bottom:25px;border-bottom:2px solid #3498db;padding-bottom:10px}.users-table{overflow-x:auto}.users-table table{width:100%;border-collapse:collapse;margin-top:20px}.users-table th,.users-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #ecf0f1}.users-table th{background:#3498db;color:#fff;font-weight:600}.users-table tr:hover{background:#f8f9fa}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.refresh-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:10px 20px;border-radius:8px;cursor:pointer;font-size:14px;transition:all .3s ease}.refresh-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.comments-section{margin-bottom:35px;background:linear-gradient(135deg,#f8f9ff 0%,#f0f4ff 100%);border-radius:20px;padding:25px;border:2px solid #e8eeff;transition:all .3s ease}.comments-section:hover{border-color:#d0d9ff;box-shadow:0 5px 20px #0000000d}.comments-label{display:flex;align-items:center;margin-bottom:20px;font-size:1.1rem;font-weight:700;color:#2c3e50;gap:8px}.label-icon{font-size:1.3rem}.label-optional{font-size:.85rem;color:#7f8c8d;font-weight:400;margin-left:8px;background:#ecf0f1;padding:2px 8px;border-radius:12px}.comments-container{display:grid;grid-template-columns:1fr 300px;gap:25px;align-items:start}.comments-input-wrapper{position:relative}.mental-health-textarea.enhanced{width:100%;min-height:160px;padding:20px;border:2px solid #d1d9e6;border-radius:15px;font-size:16px;line-height:1.6;resize:vertical;outline:none;background:white;color:#2c3e50;transition:all .3s ease;font-family:inherit;box-shadow:0 2px 10px #0000000d}.mental-health-textarea.enhanced:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a,0 5px 20px #0000001a;transform:translateY(-2px)}.mental-health-textarea.enhanced::placeholder{color:#a0a9ba;line-height:1.5}.character-count{position:absolute;bottom:10px;right:15px;font-size:.8rem;color:#7f8c8d;background:rgba(255,255,255,.9);padding:4px 8px;border-radius:8px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.character-count .warning{color:#e74c3c;font-weight:600}.comments-suggestions{background:white;border-radius:15px;padding:20px;box-shadow:0 3px 15px #00000014;margin-bottom:20px}.suggestions-header{display:flex;align-items:center;gap:8px;margin-bottom:15px;font-weight:600;color:#2c3e50}.suggestions-icon{font-size:1.1rem}.suggestion-tags{display:flex;flex-wrap:wrap;gap:8px}.suggestion-tag{display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,#f8f9fa 0%,#e9ecef 100%);border:1px solid #dee2e6;border-radius:20px;padding:8px 12px;cursor:pointer;transition:all .2s ease;font-size:.85rem;color:#495057}.suggestion-tag:hover{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-color:#667eea;transform:translateY(-1px);box-shadow:0 3px 10px #667eea33}.suggestion-emoji{font-size:1rem}.suggestion-text{font-weight:500}.comments-tips{background:white;border-radius:15px;padding:20px;box-shadow:0 3px 15px #00000014}.tips-header{display:flex;align-items:center;gap:8px;margin-bottom:12px;font-weight:600;color:#2c3e50}.tips-icon{font-size:1.1rem}.tips-list{list-style:none;padding:0;margin:0}.tips-list li{position:relative;padding:6px 0 6px 20px;color:#6c757d;font-size:.9rem;line-height:1.4}.tips-list li:before{content:"→";position:absolute;left:0;color:#667eea;font-weight:700}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);animation:modalFadeIn .3s cubic-bezier(.4,0,.2,1)}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;box-shadow:0 8px 32px #0000004d;border:1px solid rgba(255,255,255,.3);max-width:500px;width:90%;max-height:90vh;overflow:hidden;animation:modalSlideIn .4s cubic-bezier(.4,0,.2,1);position:relative}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95);-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;transform:translateY(0) scale(1);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}}.modal-content{display:flex;flex-direction:column;height:100%}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;border-bottom:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-icon{font-size:1.8rem;display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-icon.success{background:linear-gradient(135deg,rgba(102,198,108,.2),rgba(76,175,80,.2));color:#4caf50;border:1px solid rgba(76,175,80,.3)}.modal-icon.error{background:linear-gradient(135deg,rgba(244,67,54,.2),rgba(229,57,53,.2));color:#f44336;border:1px solid rgba(229,57,53,.3)}.modal-icon.info{background:linear-gradient(135deg,rgba(102,126,234,.2),rgba(118,75,162,.2));color:#667eea;border:1px solid rgba(102,126,234,.3)}.modal-title-text{font-size:1.3rem;font-weight:700;color:#1a202c}.modal-close{background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3);font-size:1.2rem;color:#4a5568;cursor:pointer;padding:8px;border-radius:12px;width:40px;height:40px;display:flex;align-items:center;justify-content:center;transition:all .3s cubic-bezier(.4,0,.2,1);line-height:1;font-weight:600}.modal-close:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 4px 15px #0000001a;color:#2d3748}.modal-close:focus{outline:2px solid rgba(102,126,234,.5);outline-offset:2px}.modal-body{padding:32px;flex:1;overflow-y:auto}.modal-message{color:#2d3748;line-height:1.7;font-size:1.1rem}.modal-line{margin-bottom:8px}.modal-line:last-child{margin-bottom:0}.modal-footer{padding:24px 32px;border-top:1px solid rgba(255,255,255,.2);display:flex;justify-content:center;background:rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-button{border:none;padding:14px 36px;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);min-width:120px;outline:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.modal-button.success{background:linear-gradient(135deg,#4caf50 0%,#66bb6a 100%);color:#fff;border:1px solid rgba(76,175,80,.3)}.modal-button.success:hover{transform:translateY(-2px);box-shadow:0 8px 25px #4caf5066;background:linear-gradient(135deg,#43a047 0%,#5cb85c 100%)}.modal-button.success:focus{box-shadow:0 0 0 3px #4caf504d}.modal-button.error{background:linear-gradient(135deg,#f44336 0%,#e57373 100%);color:#fff;border:1px solid rgba(244,67,54,.3)}.modal-button.error:hover{transform:translateY(-2px);box-shadow:0 8px 25px #f4433666;background:linear-gradient(135deg,#d32f2f 0%,#e53935 100%)}.modal-button.error:focus{box-shadow:0 0 0 3px #f443364d}.modal-button.info{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:1px solid rgba(102,126,234,.3)}.modal-button.info:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66;background:linear-gradient(135deg,#5a67d8 0%,#6b46c1 100%)}.modal-button.info:focus{box-shadow:0 0 0 3px #667eea4d}.form-group{margin-bottom:24px}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#2d3748;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid rgba(226,232,240,.6);border-radius:12px;font-size:14px;font-family:inherit;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box;color:#2d3748}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;background:rgba(255,255,255,.95);transform:translateY(-1px)}.form-group input::placeholder,.form-group textarea::placeholder{color:#a0aec0;font-style:italic}.form-group select{cursor:pointer}.form-group textarea{resize:vertical;min-height:100px}.modal-body .form-group{margin-bottom:20px}.modal-body .form-group:last-child{margin-bottom:0}.modal-footer{display:flex;gap:12px;justify-content:flex-end}.modal-footer button{min-width:120px}.star-rating-container{background:white;padding:20px;border-radius:15px;box-shadow:0 3px 15px #00000014;margin-bottom:25px;border:2px solid #f0f4ff;transition:all .3s ease}.star-rating-container:hover{border-color:#e0e8ff;box-shadow:0 5px 20px #0000001a}.star-rating{display:flex;justify-content:center;gap:8px;margin-bottom:15px;flex-wrap:wrap}.star{background:none;border:none;font-size:2rem;cursor:pointer;transition:all .2s ease;padding:5px;border-radius:50%;position:relative;filter:grayscale(100%);opacity:.3}.star:hover{transform:scale(1.2);filter:grayscale(0%);opacity:1}.star.filled{filter:grayscale(0%);opacity:1;animation:starPulse .3s ease-out}@keyframes starPulse{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.star.stress.filled{filter:hue-rotate(0deg) brightness(1.2)}.star.mood.filled{filter:hue-rotate(120deg) brightness(1.2)}.star.energy.filled{filter:hue-rotate(240deg) brightness(1.2)}.star.sleep.filled{filter:hue-rotate(60deg) brightness(1.2)}.star.work.filled{filter:hue-rotate(300deg) brightness(1.2)}.rating-info{display:flex;align-items:center;justify-content:center;gap:15px;padding:12px 20px;border-radius:25px;font-weight:600;transition:all .3s ease}.rating-info.stress{background:linear-gradient(135deg,#fff5f5 0%,#fed7d7 100%);color:#c53030}.rating-info.mood{background:linear-gradient(135deg,#f0fff4 0%,#c6f6d5 100%);color:#22543d}.rating-info.energy{background:linear-gradient(135deg,#fffaf0 0%,#fbd38d 100%);color:#c05621}.rating-info.sleep{background:linear-gradient(135deg,#f7fafc 0%,#cbd5e0 100%);color:#2d3748}.rating-info.work{background:linear-gradient(135deg,#faf5ff 0%,#e9d8fd 100%);color:#553c9a}.rating-value{font-size:1.8rem;font-weight:800;min-width:40px;text-align:center;background:white;border-radius:50%;width:50px;height:50px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #0000001a}.rating-label{font-size:1.1rem;display:flex;align-items:center;gap:8px}.mental-health-submit{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:15px 40px;border-radius:25px;cursor:pointer;font-size:1.1rem;font-weight:700;transition:all .3s ease;display:flex;align-items:center;gap:10px;margin:30px auto;box-shadow:0 4px 15px #667eea4d}.mental-health-submit:hover{background:linear-gradient(135deg,#5a6fd8 0%,#6a4190 100%);transform:translateY(-3px);box-shadow:0 8px 25px #667eea66}.mental-health-submit:active{transform:translateY(-1px)}.button-icon{font-size:1.2rem}.mental-health-form .form-group{margin-bottom:30px}.mental-health-form .form-group label{display:block;margin-bottom:15px;font-size:1.1rem;font-weight:700;color:#2c3e50;text-align:center}.comments-layout{display:flex;gap:20px}.comments-input-wrapper{flex:2}.mood-examples-small{flex:1;background:#f8f9fa;border-radius:8px;padding:16px;border:1px solid #e9ecef}.mood-examples-small h4{margin:0 0 12px;color:#495057;font-size:14px;font-weight:600}.examples-grid-small{display:flex;flex-direction:column;gap:6px}.example-button-small{display:flex;align-items:center;gap:8px;padding:8px 10px;background:white;border:1px solid #dee2e6;border-radius:6px;cursor:pointer;transition:all .2s ease;text-align:left;width:100%;font-size:12px}.example-button-small:hover{background:#e3f2fd;border-color:#2196f3;transform:translateY(-1px)}.example-button-small .example-emoji{font-size:14px;flex-shrink:0}.example-button-small .example-text{color:#495057;line-height:1.3}.profile-hero{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:16px;padding:32px;color:#fff;margin-bottom:24px;display:flex;align-items:center;gap:24px;box-shadow:0 8px 32px #0000001a}.profile-avatar{position:relative}.avatar-circle{width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;border:3px solid rgba(255,255,255,.3)}.profile-name{font-size:28px;font-weight:700;margin:0 0 12px}.profile-badges{display:flex;gap:8px;flex-wrap:wrap}.badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;display:flex;align-items:center;gap:4px}.admin-badge{background:rgba(255,193,7,.2);color:#ffc107;border:1px solid rgba(255,193,7,.3)}.member-badge{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3)}.profile-content{display:grid;gap:24px;grid-template-columns:1fr 2fr}.profile-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #f0f0f0}.card-header{display:flex;justify-content:between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f5f5f5}.stats-period{font-size:12px;color:#666;background:#f8f9fa;padding:4px 8px;border-radius:12px}.info-grid{display:flex;flex-direction:column;gap:16px}.info-item{display:flex;flex-direction:column;gap:4px}.info-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.info-value{font-size:16px;font-weight:500;color:#333}.stats-grid{display:grid;gap:16px}.stat-card{background:#f8f9fa;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.stat-card.meditation{background:linear-gradient(135deg,#e8f5e8 0%,#f0f8f0 100%)}.stat-card.journal{background:linear-gradient(135deg,#fff3e0 0%,#fef7f0 100%)}.stat-card.chat{background:linear-gradient(135deg,#e3f2fd 0%,#f3f9ff 100%)}.stat-icon{font-size:32px;flex-shrink:0}.stat-content h4{margin:0 0 8px;font-size:14px;font-weight:600;color:#555}.stat-number{font-size:28px;font-weight:700;color:#333;line-height:1}.stat-unit{font-size:14px;color:#666;margin-left:4px}.stat-detail{font-size:12px;color:#666;margin-top:4px}.achievements-card{grid-column:1 / -1}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:16px}.achievement-badge{background:#f8f9fa;border-radius:12px;padding:16px;text-align:center;transition:transform .2s ease;border:2px solid transparent}.achievement-badge:not(.locked){background:linear-gradient(135deg,#fff9c4 0%,#f7f3d0 100%);border-color:#ffc107}.achievement-badge.locked{opacity:.5}.achievement-badge:hover:not(.locked){transform:translateY(-2px)}.achievement-icon{font-size:24px;margin-bottom:8px}.achievement-name{font-size:12px;font-weight:600;color:#333;margin-bottom:4px}.achievement-desc{font-size:10px;color:#666}.progress-overview h3,.progress-trends h3,.progress-insights h3{margin:0 0 20px;color:#333;font-size:20px;font-weight:700}.goals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.goal-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #f0f0f0;transition:transform .2s ease,box-shadow .2s ease}.goal-card:hover{transform:translateY(-2px);box-shadow:0 8px 30px #0000001f}.goal-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.goal-icon{font-size:24px}.goal-header h4{margin:0;font-size:16px;font-weight:600;color:#333}.progress-bar{height:8px;background:#f0f0f0;border-radius:4px;overflow:hidden;margin-bottom:12px}.progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.progress-fill.meditation{background:linear-gradient(90deg,#4caf50,#66bb6a)}.progress-fill.journal{background:linear-gradient(90deg,#ff9800,#ffb74d)}.progress-fill.chat{background:linear-gradient(90deg,#2196f3,#42a5f5)}.goal-stats{display:flex;align-items:center;gap:4px;margin-bottom:8px}.current{font-size:24px;font-weight:700;color:#333}.separator{font-size:18px;color:#666}.target{font-size:18px;font-weight:600;color:#666}.unit{font-size:14px;color:#666;margin-left:4px}.goal-detail{font-size:12px;color:#666}.trends-grid{display:grid;gap:16px}.trend-item{background:white;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f;border:1px solid #f0f0f0;display:flex;align-items:center;gap:16px}.trend-icon{font-size:24px;width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.trend-icon.positive{background:#e8f5e8}.trend-icon.stable{background:#fff3e0}.trend-content h4{margin:0 0 4px;font-size:16px;font-weight:600;color:#333}.trend-content p{margin:0 0 8px;font-size:14px;color:#666}.trend-status{padding:2px 8px;border-radius:12px;font-size:12px;font-weight:600}.trend-status.improving{background:#e8f5e8;color:#4caf50}.trend-status.stable{background:#fff3e0;color:#ff9800}.insights-list{display:grid;gap:16px}.insight-card{background:linear-gradient(135deg,#f8f9fa 0%,#ffffff 100%);border-radius:12px;padding:20px;border-left:4px solid #2196f3;display:flex;align-items:flex-start;gap:16px}.insight-icon{font-size:24px;flex-shrink:0;margin-top:4px}.insight-content h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#333}.insight-content p{margin:0;font-size:14px;color:#666;line-height:1.5}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:32px}.overview-stat{background:white;border-radius:12px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 12px #0000000d;border:1px solid #f0f0f0;transition:transform .2s ease}.overview-stat:hover{transform:translateY(-2px)}.stat-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.stat-icon.users{background:#e3f2fd}.stat-icon.active{background:#e8f5e8}.stat-icon.sessions{background:#fff3e0}.stat-icon.health{background:#fce4ec}.stat-content h3{margin:0 0 8px;font-size:14px;font-weight:600;color:#666}.stat-value{font-size:32px;font-weight:700;color:#333;line-height:1;margin-bottom:4px}.stat-change{font-size:12px;font-weight:600;padding:2px 6px;border-radius:12px}.stat-change.positive{background:#e8f5e8;color:#4caf50}.stat-change.neutral{background:#f5f5f5;color:#666}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}@media (max-width: 768px){.dashboard-grid{grid-template-columns:1fr}}.dashboard-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #f0f0f0}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid #f5f5f5}.card-header h3{margin:0;font-size:18px;font-weight:700;color:#333}.timestamp{font-size:12px;color:#666;background:#f8f9fa;padding:4px 8px;border-radius:12px}.activity-list{display:flex;flex-direction:column;gap:16px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px;background:#f8f9fa;border-radius:8px}.activity-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.activity-icon.login{background:#e3f2fd}.activity-icon.user{background:#e8f5e8}.activity-icon.system{background:#fff3e0}.activity-icon.backup{background:#fce4ec}.activity-content{display:flex;flex-direction:column;gap:2px}.activity-text{font-size:14px;color:#333;font-weight:500}.activity-time{font-size:12px;color:#666}.status-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.status-item{display:flex;flex-direction:column;gap:4px}.status-label{font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.status-value{font-size:16px;font-weight:600;color:#333}.status-value.online{color:#4caf50}.actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.action-btn{background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:16px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#e9ecef;transform:translateY(-1px)}.action-icon{font-size:20px}.action-text{font-size:12px;font-weight:600;color:#333}.alerts-list{display:flex;flex-direction:column;gap:12px}.alert-item{display:flex;align-items:center;gap:12px;padding:12px;border-radius:8px;border-left:4px solid}.alert-item.info{background:#e3f2fd;border-left-color:#2196f3}.alert-item.success{background:#e8f5e8;border-left-color:#4caf50}.alert-icon{font-size:16px;flex-shrink:0}.alert-content{display:flex;flex-direction:column;gap:2px}.alert-text{font-size:14px;color:#333;font-weight:500}.alert-time{font-size:12px;color:#666}.settings-container{display:grid;gap:32px}.settings-group{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.settings-group h3{margin:0 0 20px;color:#1a202c;font-size:18px;font-weight:700;padding-bottom:12px;border-bottom:2px solid #e2e8f0}.settings-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #f7fafc}.settings-item:last-child{border-bottom:none}.settings-item label{font-weight:600;color:#4a5568}.status-indicator{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-indicator.online{background:#c6f6d5;color:#22543d}.settings-item-enhanced{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #f7fafc}.settings-item-enhanced:last-child{border-bottom:none}.setting-info{flex:1}.setting-info label{display:block;font-weight:600;color:#1a202c;margin-bottom:4px}.setting-description{font-size:12px;color:#718096;line-height:1.4}.setting-control{flex-shrink:0;margin-left:16px}.toggle-button{background:#e2e8f0;color:#4a5568;border:none;padding:8px 16px;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;min-width:60px}.toggle-button.active{background:linear-gradient(135deg,#48bb78 0%,#38a169 100%);color:#fff}.toggle-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.number-input{padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;width:80px;text-align:center;transition:all .3s ease}.ip-restriction-status{margin-bottom:24px}.status-card{background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border:1px solid #e2e8f0;border-radius:12px;padding:20px}.status-header{display:flex;align-items:center;gap:12px;margin-bottom:8px}.status-icon{font-size:20px}.status-header h4{margin:0;color:#1a202c;font-size:16px;font-weight:700;flex:1}.status-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status-badge.active{background:#c6f6d5;color:#22543d}.status-badge.inactive{background:#fed7d7;color:#742a2a}.status-description{margin:0;font-size:14px;color:#4a5568;line-height:1.5}.ip-whitelist-section{margin-bottom:24px}.ip-whitelist-section h4{margin:0 0 16px;color:#1a202c;font-size:16px;font-weight:700}.ip-table-container{border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;margin-bottom:20px}.ip-table{width:100%;border-collapse:collapse;background:white}.ip-table th,.ip-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.ip-table th{background:#f7fafc;font-weight:600;color:#4a5568;font-size:14px}.ip-table tr:hover{background:#f7fafc}.ip-table tr:last-child td{border-bottom:none}.ip-address{font-family:monospace;font-size:13px;color:#1a202c;font-weight:600}.ip-actions{display:flex;gap:8px;align-items:center}.toggle-btn{padding:4px 12px;border:none;border-radius:12px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.toggle-btn.active{background:#fed7d7;color:#742a2a}.toggle-btn:not(.active){background:#c6f6d5;color:#22543d}.remove-btn{background:#fed7d7;color:#742a2a;border:none;padding:4px 8px;border-radius:8px;cursor:pointer;transition:all .3s ease}.remove-btn:hover{background:#fbb6ce;transform:scale(1.1)}.add-ip-section h4{margin:0 0 16px;color:#1a202c;font-size:16px;font-weight:700}.add-ip-form{margin-bottom:16px}.form-row{display:grid;grid-template-columns:2fr 2fr auto;gap:12px;align-items:center}.ip-input,.description-input{padding:12px 16px;border:2px solid #e2e8f0;border-radius:8px;font-size:14px;transition:all .3s ease}.add-ip-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;white-space:nowrap}.add-ip-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.add-ip-btn:disabled{background:#e2e8f0;color:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none}.ip-help{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px}.ip-help p{margin:0 0 8px;font-weight:600;color:#4a5568;font-size:14px}.ip-help ul{margin:0;padding-left:20px}.ip-help li{font-size:12px;color:#718096;line-height:1.5;margin-bottom:4px}.ip-help li:last-child{margin-bottom:0}.plan-section{border:2px solid #667eea;background:linear-gradient(135deg,#f7fafc 0%,#fafafa 100%)}.plan-section-icon{font-size:20px;margin-right:8px}.current-plan{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border-radius:16px;padding:24px;margin-bottom:24px;position:relative;overflow:hidden}.current-plan:before{content:"";position:absolute;top:-50%;right:-20%;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.plan-header{display:flex;align-items:center;gap:16px;margin-bottom:20px;position:relative;z-index:2}.plan-icon{font-size:32px;background:rgba(255,255,255,.2);border-radius:12px;padding:8px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.plan-name{margin:0 0 4px;font-size:24px;font-weight:700}.plan-tier{font-size:14px;opacity:.9}.plan-badge{background:rgba(255,255,255,.2);padding:6px 16px;border-radius:20px;font-size:12px;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.plan-user-limit{margin-bottom:20px;position:relative;z-index:2}.user-limit-label{font-size:14px;opacity:.9}.user-limit-value{font-size:16px;font-weight:700}.user-limit-fill{height:100%;background:rgba(255,255,255,.8);border-radius:4px;transition:width .3s ease}.user-limit-text{font-size:12px;opacity:.9;white-space:nowrap}.plan-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:8px;margin-bottom:20px;position:relative;z-index:2}.feature-icon{font-size:16px}.plan-usage{background:rgba(255,255,255,.1);border-radius:12px;padding:16px;margin-bottom:20px;position:relative;z-index:2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.usage-label{font-size:14px;opacity:.9}.usage-value{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.usage-bar{width:60px;height:6px;background:rgba(255,255,255,.2);border-radius:3px;overflow:hidden}.plan-actions{display:flex;gap:12px;position:relative;z-index:2}.upgrade-plan-btn{background:rgba(255,255,255,.2);color:#fff;border:2px solid rgba(255,255,255,.3);padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:6px}.upgrade-plan-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-2px)}.manage-plan-btn{background:white;color:#667eea;border:none;padding:12px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.manage-plan-btn:hover{background:#f7fafc;transform:translateY(-2px)}.other-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-bottom:32px}.plan-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:2px solid #e2e8f0;position:relative;transition:all .3s ease}.plan-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px #0000001f}.plan-card.popular{border-color:#667eea}.recommended-badge{position:absolute;top:-12px;right:24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:6px 16px;border-radius:12px;font-size:12px;font-weight:600}.plan-card-header{text-align:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.plan-card-name{margin:0 0 8px;font-size:20px;font-weight:700;color:#1a202c}.plan-card-price{font-size:28px;font-weight:800;color:#667eea;margin-bottom:4px}.currency{font-size:16px}.period{font-size:14px;color:#718096}.plan-card-subtitle{font-size:12px;color:#718096}.plan-user-count{background:#f7fafc;border-radius:8px;padding:12px;margin-bottom:20px;text-align:center}.user-count-label{font-size:12px;color:#718096;margin-bottom:4px}.user-count-value{font-size:14px;font-weight:700;color:#1a202c}.user-count-unlimited{color:#667eea;font-weight:800}.plan-card-features li{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:14px;color:#4a5568}.check-icon{color:#48bb78;font-weight:700}.plan-card-button{width:100%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease}.enterprise-contact{text-align:center}.enterprise-contact-title{display:flex;align-items:center;justify-content:center;gap:8px;font-size:16px;font-weight:700;color:#1a202c;margin-bottom:12px}.enterprise-contact-desc{font-size:14px;color:#4a5568;line-height:1.5;margin-bottom:16px}.enterprise-contact-btn{background:linear-gradient(135deg,#805ad5 0%,#6b46c1 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;gap:6px;width:100%}.enterprise-contact-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #805ad54d}.billing-section{margin-bottom:24px}.billing-section h4{margin:0 0 16px;color:#1a202c;font-size:16px;font-weight:700;display:flex;align-items:center}.billing-table-container{border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;margin-bottom:20px}.billing-table{width:100%;border-collapse:collapse;background:white}.billing-table th,.billing-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e2e8f0}.billing-table th{background:#f7fafc;font-weight:600;color:#4a5568;font-size:14px}.billing-table tr:hover{background:#f7fafc}.amount{font-weight:700;color:#1a202c}.status-badge.success{background:#c6f6d5;color:#22543d}.download-btn{background:#f7fafc;color:#4a5568;border:1px solid #e2e8f0;padding:6px 12px;border-radius:6px;font-size:12px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:4px}.download-btn:hover{background:#edf2f7;transform:translateY(-1px)}.payment-method h4{margin:0 0 16px;color:#1a202c;font-size:16px;font-weight:700;display:flex;align-items:center}.payment-card{background:linear-gradient(135deg,#1a365d 0%,#2d3748 100%);border-radius:16px;padding:24px;color:#fff;position:relative;overflow:hidden}.payment-card:before{content:"";position:absolute;top:-50%;right:-20%;width:150px;height:150px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.card-visual{margin-bottom:20px;position:relative;z-index:2}.card-brand{font-size:18px;font-weight:700;margin-bottom:12px}.card-number{font-family:monospace;font-size:16px;font-weight:600;letter-spacing:2px;margin-bottom:12px}.card-details{display:flex;justify-content:space-between;font-size:14px}.payment-actions{display:flex;gap:12px;position:relative;z-index:2}.edit-payment-btn,.add-payment-btn{background:rgba(255,255,255,.2);color:#fff;border:1px solid rgba(255,255,255,.3);padding:8px 16px;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:4px}.edit-payment-btn:hover,.add-payment-btn:hover{background:rgba(255,255,255,.3);transform:translateY(-1px)}.settings-actions{display:flex;gap:12px;justify-content:center;padding-top:32px}.primary-button{background:linear-gradient(135deg,#48bb78 0%,#38a169 100%);color:#fff;border:none;padding:14px 32px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #48bb784d}.secondary-button{background:white;color:#4a5568;border:2px solid #e2e8f0;padding:14px 32px;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s ease}.secondary-button:hover{background:#f7fafc;border-color:#cbd5e0;transform:translateY(-2px)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 1rem}.flex-wrap{display:flex;flex-wrap:wrap;gap:1rem}.grid-responsive{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.button-responsive{padding:.75rem 1.5rem;min-height:44px}@media (max-width: 768px){.container{padding:0 .5rem}.flex-wrap{flex-direction:column;gap:.5rem}.grid-responsive{grid-template-columns:1fr;gap:.5rem}.button-responsive{padding:.875rem 1rem;width:100%}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}p,span,div{font-size:.9rem;line-height:1.5}}.public-footer{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:60px 20px 20px;margin-top:auto}.footer-content{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 2fr;gap:60px;align-items:start}.footer-info h4{font-size:1.5rem;font-weight:700;margin:0 0 16px;color:#fff}.footer-info p{color:#fffc;line-height:1.6;margin:0;font-size:1rem}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.link-group h5{font-size:1.1rem;font-weight:600;margin:0 0 20px;color:#fff}.link-group a{display:block;color:#fffc;text-decoration:none;font-size:.95rem;line-height:1.6;margin:12px 0;transition:color .3s ease,transform .3s ease;cursor:pointer}.link-group a:hover{color:#fff;transform:translate(4px)}.footer-bottom{max-width:1200px;margin:40px auto 0;padding-top:30px;border-top:1px solid rgba(255,255,255,.1);text-align:center}.footer-bottom p{color:#fff9;margin:0;font-size:.9rem}@media (max-width: 1024px){.footer-content{grid-template-columns:1fr;gap:40px;text-align:center}.footer-links{grid-template-columns:repeat(3,1fr);gap:30px}}@media (max-width: 768px){.public-footer{padding:40px 20px 20px}.footer-content{gap:30px}.footer-links{grid-template-columns:1fr;gap:30px;text-align:center}.link-group h5{margin-bottom:16px}.link-group a:hover{transform:none}}@media (max-width: 480px){.public-footer{padding:30px 20px 15px}.footer-content,.footer-links{gap:25px}.footer-info h4{font-size:1.3rem}.link-group h5{font-size:1rem;margin-bottom:12px}.link-group a{font-size:.9rem;margin:10px 0}}.homepage{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.nav-logo{cursor:pointer;transition:opacity .3s ease}.nav-logo:hover{opacity:.8}.homepage-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;color:#4a5568}.loading-spinner{width:48px;height:48px;border:4px solid rgba(102,126,234,.2);border-top:4px solid #667eea;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:24px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.hero-section{padding:80px 20px 120px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at top,rgba(102,126,234,.1) 0%,transparent 50%);pointer-events:none}.hero-content{max-width:1400px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;position:relative;z-index:1}.hero-text{display:flex;flex-direction:column;gap:32px}.hero-title{font-size:4rem;font-weight:800;color:#1a202c;line-height:1.1;margin:0}.hero-actions{display:flex;gap:20px;flex-wrap:wrap}.cta-button{padding:16px 32px;border-radius:16px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;position:relative;overflow:hidden;min-width:160px}.hero-visual{display:grid;grid-template-columns:1fr;gap:24px}.hero-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:32px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1)}.hero-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px #667eea33}.hero-card .card-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 16px}.hero-card .icon-gradient{color:#667eea;transition:all .3s ease}.hero-card:hover .icon-gradient{color:#764ba2;transform:scale(1.1)}.hero-card h3{font-size:1.4rem;font-weight:700;color:#1a202c;margin:0 0 12px}.hero-card p{color:#4a5568;line-height:1.6;margin:0}.plans-section{padding:120px 20px;background:rgba(255,255,255,.5)}.plans-content{max-width:1400px;margin:0 auto}.section-header{text-align:center;margin-bottom:80px}.section-header h2{font-size:3rem;font-weight:800;color:#1a202c;margin:0 0 20px}.plans-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;max-width:1400px;margin:0 auto}.plan-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:2rem;border:1px solid rgba(102,126,234,.15);transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden;display:flex;flex-direction:column;height:100%;color:#2d3748;box-shadow:0 8px 25px #667eea14}.plan-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .4s ease;border-radius:24px 24px 0 0}.plan-card:hover:before{transform:scaleX(1)}.plan-card:hover{transform:translateY(-6px) scale(1.02);box-shadow:0 16px 40px #667eea40;border-color:#667eea66}.plan-card.popular{border-color:#667eea;box-shadow:0 12px 36px #667eea33;background:linear-gradient(145deg,#ffffff 0%,#f7fafc 100%)}.plan-card.popular:before{transform:scaleX(1);background:linear-gradient(90deg,#667eea,#764ba2)}.popular-badge{position:absolute;top:-1px;right:24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:8px 20px;border-radius:0 0 16px 16px;font-size:13px;font-weight:700;box-shadow:0 4px 16px #667eea66;letter-spacing:.5px}.ads-badge{position:absolute;top:-1px;left:24px;background:linear-gradient(135deg,#f56565 0%,#e53e3e 100%);color:#fff;padding:6px 16px;border-radius:0 0 12px 12px;font-size:12px;font-weight:600;box-shadow:0 4px 16px #f565654d}.plan-header{text-align:center;padding-bottom:20px}.plan-name{font-size:1.4rem;font-weight:700;color:#2d3748!important;margin:0 auto 12px;white-space:pre-line;line-height:1.3;text-align:center;display:block;width:100%;background:transparent!important}.plan-price{display:flex;align-items:baseline;justify-content:center;gap:4px;margin-bottom:12px}.price-amount{font-size:2rem;font-weight:700;color:#667eea;line-height:1}.price-period{font-size:.9rem;color:#4a5568;font-weight:500}.price-free{font-size:1.5rem;font-weight:800;color:#667eea}.price-custom{font-size:1.3rem;font-weight:700;color:#667eea}.user-header{padding:12px 0;border-bottom:1px solid rgba(226,232,240,.5);margin-bottom:16px}.user-limit{padding:4px 8px;background:rgba(102,126,234,.08);border-radius:6px;border:1px solid rgba(102,126,234,.15);text-align:center}.limit-text,.unlimited-text{font-size:12px;font-weight:600;color:#667eea}.unlimited-text{color:#667eea}.plan-description{color:#4a5568;line-height:1.4;margin:0;font-size:13px;font-weight:500;text-align:center}.plan-features{flex:1;padding:0 0 20px}.features-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.feature-item{font-size:14px;color:#000;display:flex;align-items:center;gap:8px}.feature-item svg{color:#667eea;flex-shrink:0}.feature-icon{display:none}.plan-footer{display:flex;justify-content:center;margin-top:auto;padding-top:1.5rem}.plan-button{width:100%;padding:1rem 1.5rem;border-radius:16px;font-size:.95rem;font-weight:700;cursor:pointer;transition:all .4s cubic-bezier(.25,.46,.45,.94);border:none;position:relative;overflow:hidden;letter-spacing:.3px}.plan-button.primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 6px 20px #667eea59}.plan-button.secondary{background:rgba(102,126,234,.1);color:#667eea;border:2px solid rgba(102,126,234,.3);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.plan-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.plan-button:hover:before{left:100%}.plan-button.primary:hover{transform:translateY(-3px) scale(1.05);box-shadow:0 12px 30px #667eea80}.plan-button.secondary:hover{transform:translateY(-3px) scale(1.05);background:rgba(102,126,234,.2);box-shadow:0 8px 20px #667eea4d}@media (max-width: 1200px){.plans-grid{grid-template-columns:repeat(3,1fr);gap:20px}}@media (max-width: 1024px){.hero-content{grid-template-columns:1fr;gap:60px;text-align:center}.hero-title{font-size:3rem}.section-header h2{font-size:2.5rem}.plans-grid{grid-template-columns:repeat(4,1fr);gap:16px}}@media (max-width: 768px){.desktop-nav{display:none}.mobile-menu-button{display:block}.hero-section{padding:60px 20px 80px}.hero-title{font-size:2.5rem}.hero-description{font-size:1.1rem}.plans-section{padding:80px 20px}.section-header h2{font-size:2rem}.plans-grid{grid-template-columns:repeat(2,1fr);gap:16px}.plan-card.popular{transform:none}}@media (max-width: 480px){.hero-actions{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:280px}.plan-header,.plan-features,.plan-footer{padding-left:24px;padding-right:24px}}.features-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.features-hero{padding:80px 20px 60px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);position:relative;overflow:hidden;text-align:center}.features-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at top,rgba(102,126,234,.1) 0%,transparent 50%);pointer-events:none}.hero-description{font-size:1.25rem;color:#4a5568;line-height:1.7;margin:0 0 32px}.hero-actions{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.features-list-section{padding:80px 20px;background:rgba(255,255,255,.5)}.features-content{max-width:1400px;margin:0 auto}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:32px}.feature-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:32px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.feature-card:hover:before{transform:scaleX(1)}.feature-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #667eea33}.feature-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.feature-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto}.feature-card:hover .icon-gradient{color:#764ba2;transform:scale(1.1)}.feature-title{font-size:1.5rem;font-weight:700;color:#1a202c;margin:0}.feature-description{color:#4a5568;font-size:1rem;line-height:1.7;margin:0 0 24px}.feature-details{margin-bottom:24px}.feature-details h4{font-size:1.1rem;font-weight:600;color:#2d3748;margin:0 0 12px}.details-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.detail-item{display:flex;align-items:center;gap:10px;color:#4a5568;font-size:14px;line-height:1.5}.detail-icon{color:#48bb78;font-weight:700;font-size:16px;flex-shrink:0}.feature-plans{border-top:1px solid rgba(226,232,240,.8);padding-top:20px}.feature-plans h4{font-size:1rem;font-weight:600;color:#2d3748;margin:0 0 12px}.plans-tags{display:flex;flex-wrap:wrap;gap:8px}.plan-tag{padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;color:#fff;background:#718096;box-shadow:0 2px 8px #0000001a}.features-cta{padding:80px 20px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center}@media (max-width: 1024px){.hero-title{font-size:3rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px}}@media (max-width: 768px){.desktop-nav{display:none}.mobile-menu-button{display:block}.features-hero{padding:60px 20px 40px}.hero-title{font-size:2.5rem}.hero-description{font-size:1.1rem}.hero-actions,.cta-actions{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:280px}.features-list-section{padding:60px 20px}.features-grid{grid-template-columns:1fr;gap:20px}.feature-card{padding:24px}.features-cta{padding:60px 20px}.cta-content h2{font-size:2rem}}@media (max-width: 480px){.hero-title{font-size:2rem}.feature-header{flex-direction:column;text-align:center;gap:12px}.feature-icon{font-size:2.5rem}.plans-tags{justify-content:center}}.about-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.homepage-nav{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:16px 20px;border-bottom:1px solid rgba(226,232,240,.5);position:sticky;top:0;z-index:100}.nav-content{max-width:1400px;margin:0 auto;display:flex;justify-content:space-between;align-items:center}.nav-logo h2{margin:0;font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.nav-links{display:flex;align-items:center;gap:32px}.nav-links a{color:#4a5568;text-decoration:none;font-weight:600;font-size:1rem;transition:color .3s ease}.nav-links a:hover{color:#667eea}.nav-cta{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:10px 20px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.nav-cta:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea4d}.about-hero{padding:100px 20px 80px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center;position:relative;overflow:hidden}.about-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,rgba(102,126,234,.1) 0%,transparent 70%);pointer-events:none}.hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.hero-title{font-size:3.5rem;font-weight:800;color:#1a202c;line-height:1.2;margin:0 0 24px}.hero-title .highlight{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-description{font-size:1.25rem;color:#4a5568;line-height:1.7;margin:0}.mission-vision-section{padding:80px 20px;background:rgba(255,255,255,.5)}.mission-vision-content{max-width:1200px;margin:0 auto}.mission-vision-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.mission-card,.vision-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:40px;text-align:center;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.mission-card:before,.vision-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2);transform:scaleX(0);transition:transform .3s ease}.mission-card:hover:before,.vision-card:hover:before{transform:scaleX(1)}.mission-card:hover,.vision-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #667eea33}.card-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 20px}.mission-card h3,.vision-card h3{font-size:1.8rem;font-weight:700;color:#1a202c;margin:0 0 20px}.mission-card p,.vision-card p{font-size:1.1rem;color:#4a5568;line-height:1.7;margin:0}.values-section{padding:80px 20px;background:linear-gradient(135deg,rgba(102,126,234,.05) 0%,rgba(118,75,162,.05) 100%)}.values-content{max-width:1200px;margin:0 auto}.section-header{text-align:center;margin-bottom:60px}.section-header h2{font-size:2.5rem;font-weight:800;color:#1a202c;margin:0 0 16px}.section-header p{font-size:1.25rem;color:#4a5568;margin:0}.values-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px}.value-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:32px;text-align:center;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1)}.value-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #667eea26}.value-icon{display:flex;align-items:center;justify-content:center;width:64px;height:64px;margin:0 auto 16px}.icon-gradient{color:#667eea;transition:all .3s ease}.value-card:hover .icon-gradient,.mission-card:hover .icon-gradient,.vision-card:hover .icon-gradient{color:#764ba2;transform:scale(1.1)}.value-title{font-size:1.4rem;font-weight:700;color:#1a202c;margin:0 0 16px}.value-description{color:#4a5568;line-height:1.6;margin:0}.team-section{padding:80px 20px;background:rgba(255,255,255,.5)}.team-content{max-width:1200px;margin:0 auto}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:32px}.team-card{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:32px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1);text-align:center}.team-card:hover{transform:translateY(-8px);box-shadow:0 16px 48px #667eea26}.member-image{font-size:4rem;margin-bottom:20px}.member-name{font-size:1.4rem;font-weight:700;color:#1a202c;margin:0 0 8px}.member-position{font-size:1rem;color:#667eea;font-weight:600;margin:0 0 16px}.member-bio{color:#4a5568;line-height:1.6;margin:0 0 20px;font-size:.95rem}.member-expertise{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.expertise-tag{background:rgba(102,126,234,.1);color:#667eea;padding:4px 12px;border-radius:16px;font-size:12px;font-weight:600;border:1px solid rgba(102,126,234,.2)}.timeline-section{padding:80px 20px;background:linear-gradient(135deg,rgba(102,126,234,.05) 0%,rgba(118,75,162,.05) 100%)}.timeline-content{max-width:800px;margin:0 auto}.timeline{position:relative;padding:0}.timeline:before{content:"";position:absolute;left:80px;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,#667eea,#764ba2)}.timeline-item{display:flex;align-items:flex-start;gap:32px;margin-bottom:40px;position:relative}.timeline-year{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:12px 16px;border-radius:12px;font-weight:700;font-size:1.1rem;min-width:80px;text-align:center;box-shadow:0 4px 16px #667eea4d;position:relative;z-index:2}.timeline-content-item{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:16px;padding:24px;flex:1;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);transition:all .3s cubic-bezier(.4,0,.2,1)}.timeline-content-item:hover{transform:translateY(-4px);box-shadow:0 12px 40px #667eea26}.timeline-title{font-size:1.3rem;font-weight:700;color:#1a202c;margin:0 0 12px}.timeline-description{color:#4a5568;line-height:1.6;margin:0}.company-info-section{padding:80px 20px;background:rgba(255,255,255,.5)}.company-info-content{max-width:800px;margin:0 auto}.company-info-grid{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:40px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);display:grid;gap:24px}.info-item{display:grid;grid-template-columns:120px 1fr;gap:20px;align-items:start;padding-bottom:20px;border-bottom:1px solid rgba(226,232,240,.5)}.info-item:last-child{border-bottom:none;padding-bottom:0}.info-item dt{font-weight:700;color:#2d3748;font-size:1rem}.info-item dd{margin:0;color:#4a5568;line-height:1.6}.about-cta{padding:80px 20px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center}.cta-content{max-width:600px;margin:0 auto}.cta-content h2{font-size:2.5rem;font-weight:800;color:#1a202c;margin:0 0 16px}.cta-content p{font-size:1.25rem;color:#4a5568;line-height:1.6;margin:0 0 32px}.cta-button{padding:16px 32px;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none;position:relative;overflow:hidden;min-width:160px}.cta-button.large{padding:18px 36px;font-size:1.2rem;min-width:180px}.cta-button.primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 4px 16px #667eea4d}.cta-button.secondary{background:rgba(255,255,255,.9);color:#4a5568;border:2px solid rgba(226,232,240,.5);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cta-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.cta-button:hover:before{left:100%}.cta-button.primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #667eea66}.cta-button.secondary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000001a;background:rgba(255,255,255,1)}@media (max-width: 1024px){.hero-title{font-size:3rem}.mission-vision-grid{grid-template-columns:1fr;gap:30px}.timeline:before{left:60px}.timeline-year{min-width:60px;padding:10px 12px}}@media (max-width: 768px){.desktop-nav{display:none}.mobile-menu-button{display:block}.about-hero{padding:80px 20px 60px}.hero-title{font-size:2.5rem}.hero-description{font-size:1.1rem}.nav-links{gap:16px}.nav-links a{font-size:.9rem}.mission-vision-section,.values-section,.team-section,.timeline-section,.company-info-section,.about-cta{padding:60px 20px}.section-header h2{font-size:2rem}.values-grid,.team-grid{grid-template-columns:1fr;gap:24px}.timeline:before{display:none}.timeline-item{flex-direction:column;gap:16px}.company-info-grid{padding:24px}.info-item{grid-template-columns:1fr;gap:8px}.cta-actions{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:280px}.cta-content h2{font-size:2rem}}@media (max-width: 480px){.nav-links{display:none}.hero-title{font-size:2rem}.card-icon,.member-image{font-size:3rem}.mission-card,.vision-card{padding:24px}}.privacy-policy-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.privacy-hero{padding:80px 20px 60px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center;position:relative;overflow:hidden}.privacy-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at top,rgba(102,126,234,.1) 0%,transparent 50%);pointer-events:none}.privacy-hero .hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.privacy-hero .hero-title{font-size:3.5rem;font-weight:800;color:#1a202c;line-height:1.1;margin:0 0 24px}.privacy-hero .hero-description{font-size:1.25rem;color:#4a5568;line-height:1.6;margin:0 0 32px}.privacy-content-section{padding:80px 20px}.privacy-content{max-width:900px;margin:0 auto}.policy-sections{display:flex;flex-direction:column;gap:60px}.policy-section{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:40px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(226,232,240,.3)}.policy-section h2{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.policy-text{color:#4a5568;line-height:1.7;font-size:1rem}.policy-text p{margin:0 0 16px}.policy-text ul{margin:16px 0;padding-left:24px}.policy-text li{margin:12px 0;line-height:1.6}.policy-text strong{color:#2d3748;font-weight:700}.security-features{display:grid;grid-template-columns:1fr;gap:24px;margin-top:24px}.security-item{display:flex;align-items:flex-start;gap:16px;padding:24px;background:linear-gradient(135deg,rgba(102,126,234,.05) 0%,rgba(118,75,162,.05) 100%);border-radius:12px;border:1px solid rgba(102,126,234,.1)}.security-icon{color:#667eea;flex-shrink:0;margin-top:4px}.security-item h3{font-size:1.1rem;font-weight:700;color:#1a202c;margin:0 0 8px}.security-item p{color:#4a5568;margin:0;line-height:1.6}.highlight-box{background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);border-left:4px solid #667eea;padding:20px 24px;border-radius:8px;margin:24px 0}.highlight-box strong{color:#667eea}.privacy-cta{padding:80px 20px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center;position:relative;overflow:hidden}.privacy-cta:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,rgba(102,126,234,.1) 0%,transparent 60%);pointer-events:none}.privacy-cta .cta-content{max-width:600px;margin:0 auto;position:relative;z-index:1}.privacy-cta h2{font-size:2.5rem;font-weight:800;color:#1a202c;margin:0 0 16px}.privacy-cta p{font-size:1.25rem;color:#4a5568;line-height:1.6;margin:0 0 40px}@media (max-width: 1024px){.privacy-hero .hero-title{font-size:3rem}.policy-section{padding:32px 24px}.security-features{gap:20px}}@media (max-width: 768px){.desktop-nav{display:none}.mobile-menu-button{display:block}.privacy-hero{padding:60px 20px 40px}.privacy-hero .hero-title{font-size:2.5rem}.privacy-hero .hero-description{font-size:1.1rem}.privacy-content-section{padding:60px 20px}.policy-sections{gap:40px}.policy-section{padding:24px 20px;border-radius:16px}.policy-section h2{font-size:1.75rem}.security-item{padding:20px;gap:12px}.privacy-cta h2{font-size:2rem}.privacy-cta p{font-size:1.1rem}.cta-actions{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:280px}}@media (max-width: 480px){.privacy-hero .hero-title{font-size:2rem}.policy-section{padding:20px 16px}.policy-section h2{font-size:1.5rem}.security-item{flex-direction:column;text-align:center;gap:8px}.privacy-cta{padding:60px 20px}}.terms-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.terms-hero{padding:80px 20px 60px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center;position:relative;overflow:hidden}.terms-hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at top,rgba(102,126,234,.1) 0%,transparent 50%);pointer-events:none}.terms-hero .hero-content{max-width:800px;margin:0 auto;position:relative;z-index:1}.hero-icon{margin-bottom:24px}.hero-icon .icon-gradient{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.terms-hero .hero-title{font-size:3.5rem;font-weight:800;color:#1a202c;line-height:1.1;margin:0 0 24px}.terms-hero .hero-description{font-size:1.25rem;color:#4a5568;line-height:1.6;margin:0 0 32px}.last-updated{background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#718096;padding:12px 24px;border-radius:24px;font-size:.95rem;display:inline-block;border:1px solid rgba(226,232,240,.5)}.terms-content-section{padding:80px 20px}.terms-content{max-width:900px;margin:0 auto}.terms-sections{display:flex;flex-direction:column;gap:60px}.terms-section{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;padding:40px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(226,232,240,.3)}.terms-section h2{font-size:2rem;font-weight:700;color:#1a202c;margin:0 0 24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.terms-text{color:#4a5568;line-height:1.7;font-size:1rem}.terms-text p{margin:0 0 16px}.terms-text ul{margin:16px 0;padding-left:24px}.terms-text li{margin:12px 0;line-height:1.6}.terms-text strong{color:#2d3748;font-weight:700}.terms-text a{color:#667eea;text-decoration:none;font-weight:600;border-bottom:1px solid transparent;transition:border-color .3s ease}.terms-text a:hover{border-bottom-color:#667eea}.pricing-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin:24px 0}.pricing-item{background:linear-gradient(135deg,rgba(102,126,234,.05) 0%,rgba(118,75,162,.05) 100%);border:1px solid rgba(102,126,234,.1);border-radius:12px;padding:20px}.pricing-item h3{font-size:1.1rem;font-weight:700;color:#1a202c;margin:0 0 8px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pricing-item p{color:#4a5568;margin:0;line-height:1.5}.disclaimer-box{background:linear-gradient(135deg,rgba(245,101,101,.1) 0%,rgba(237,137,54,.1) 100%);border-left:4px solid #f56565;padding:20px 24px;border-radius:8px;margin:24px 0;display:flex;align-items:flex-start;gap:16px}.disclaimer-icon{color:#f56565;flex-shrink:0;margin-top:4px}.disclaimer-box h3{font-size:1.1rem;font-weight:700;color:#1a202c;margin:0 0 8px}.disclaimer-box p{color:#4a5568;margin:0;line-height:1.6}.contact-info{background:rgba(102,126,234,.05);padding:24px;border-radius:12px;margin-top:16px;border:1px solid rgba(102,126,234,.1)}.contact-info p{margin:8px 0;color:#2d3748}.contact-info strong{color:#667eea}.terms-cta{padding:80px 20px;background:linear-gradient(135deg,rgba(102,126,234,.1) 0%,rgba(118,75,162,.1) 100%);text-align:center;position:relative;overflow:hidden}.terms-cta:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at center,rgba(102,126,234,.1) 0%,transparent 60%);pointer-events:none}.terms-cta .cta-content{max-width:600px;margin:0 auto;position:relative;z-index:1}.terms-cta h2{font-size:2.5rem;font-weight:800;color:#1a202c;margin:0 0 16px}.terms-cta p{font-size:1.25rem;color:#4a5568;line-height:1.6;margin:0 0 40px}.cta-actions{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}.cta-button{padding:16px 32px;border-radius:12px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:2px solid transparent;position:relative;overflow:hidden;font-family:inherit;min-width:160px}.cta-button.primary{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.cta-button.secondary{background:rgba(255,255,255,.9);color:#4a5568;border-color:#e2e8f080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.cta-button:hover{transform:translateY(-3px);box-shadow:0 8px 25px #667eea4d}.cta-button.secondary:hover{background:rgba(255,255,255,1);box-shadow:0 8px 25px #0000001a}.mobile-menu-button{display:none;cursor:pointer;padding:8px;border-radius:8px;transition:background-color .3s ease}.mobile-menu-button:hover{background-color:#667eea1a}.mobile-menu{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(226,232,240,.5);box-shadow:0 4px 12px #0000001a;z-index:1000}.mobile-menu.open{display:block}.mobile-nav-links{padding:20px;display:flex;flex-direction:column;gap:20px}.mobile-nav-links a{color:#4a5568;text-decoration:none;font-weight:600;font-size:1.1rem;padding:12px 0;border-bottom:1px solid rgba(226,232,240,.3);transition:color .3s ease}.mobile-nav-links a:hover{color:#667eea}.mobile-nav-links a:last-of-type{border-bottom:none;margin-bottom:16px}.nav-cta.mobile{width:100%;padding:14px 20px;font-size:1.1rem}.desktop-nav{display:flex}@media (max-width: 1024px){.terms-hero .hero-title{font-size:3rem}.terms-section{padding:32px 24px}.pricing-info{grid-template-columns:1fr;gap:16px}}@media (max-width: 768px){.desktop-nav{display:none}.mobile-menu-button{display:block}.terms-hero{padding:60px 20px 40px}.terms-hero .hero-title{font-size:2.5rem}.terms-hero .hero-description{font-size:1.1rem}.terms-content-section{padding:60px 20px}.terms-sections{gap:40px}.terms-section{padding:24px 20px;border-radius:16px}.terms-section h2{font-size:1.75rem}.disclaimer-box{flex-direction:column;text-align:center;gap:8px}.terms-cta h2{font-size:2rem}.terms-cta p{font-size:1.1rem}.cta-actions{flex-direction:column;align-items:center}.cta-button{width:100%;max-width:280px}}@media (max-width: 480px){.terms-hero .hero-title{font-size:2rem}.terms-section{padding:20px 16px}.terms-section h2{font-size:1.5rem}.terms-cta{padding:60px 20px}}.journal-container{display:grid;grid-template-columns:1fr;gap:32px;max-width:1200px;margin:0 auto}@media (min-width: 1024px){.journal-container{grid-template-columns:1fr 1fr}}.journal-form{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:32px;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3);position:relative;overflow:hidden}.journal-form:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2)}.mood-selector{margin-bottom:28px;padding:24px;background:linear-gradient(135deg,rgba(248,250,252,.9) 0%,rgba(241,245,249,.9) 100%);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;border:1px solid rgba(226,232,240,.5);transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 16px #0000000a}.mood-selector:has(.mood-option.selected){background:linear-gradient(135deg,rgba(235,248,255,.9) 0%,rgba(241,248,255,.9) 100%);border-color:#bee3f8b3;box-shadow:0 4px 20px #3182ce26;transform:translateY(-2px)}.mood-header{text-align:center;margin-bottom:20px}.mood-selector h4{margin:0 0 8px;color:#1a202c;font-size:18px;font-weight:700;text-align:center}.current-date{color:#4a5568;font-size:14px;font-weight:500;text-align:center;opacity:.8}.mood-options{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}.mood-option{display:flex;flex-direction:column;align-items:center;padding:16px 8px;background:white;border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;transition:all .2s ease;text-align:center;position:relative;overflow:hidden;font-family:inherit;font-size:inherit;-webkit-user-select:none;user-select:none}.mood-option:disabled{opacity:.6;cursor:not-allowed}.mood-option:hover:not(:disabled){border-color:#cbd5e0;transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.mood-option:active:not(:disabled){transform:translateY(0);transition:all .1s ease;box-shadow:0 2px 8px #0003}.mood-option.selected{border-color:#3182ce;background:linear-gradient(135deg,#ebf8ff 0%,#dbeafe 100%);transform:translateY(-3px);box-shadow:0 6px 20px #3182ce40}.mood-option.selected:active{transform:translateY(-1px);box-shadow:0 4px 16px #3182ce4d}.mood-option:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.mood-emoji{font-size:32px;margin-bottom:8px;filter:grayscale(.4);transition:all .2s ease;transform-origin:center}.mood-option:hover:not(:disabled) .mood-emoji{filter:grayscale(.1);transform:scale(1.1)}.mood-option:active:not(:disabled) .mood-emoji{transform:scale(1.05)}.mood-option.selected .mood-emoji{filter:grayscale(0);transform:scale(1.15);animation:pulseGlow .3s ease}@keyframes pulseGlow{0%{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.2);filter:brightness(1.2)}to{transform:scale(1.15);filter:brightness(1)}}.mood-label{font-size:14px;font-weight:600;color:#1a202c;margin-bottom:4px;transition:color .2s ease}.mood-description{font-size:12px;color:#718096;font-weight:500;transition:color .2s ease}.mood-option:hover:not(:disabled) .mood-label{color:#2d3748}.mood-option:hover:not(:disabled) .mood-description{color:#4a5568}.mood-option.selected .mood-label{color:#2b6cb0;font-weight:700}.mood-option.selected .mood-description{color:#4299e1;font-weight:600}.journal-textarea{width:100%;min-height:240px;padding:20px;border:2px solid rgba(226,232,240,.6);border-radius:16px;resize:vertical;font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.7;color:#1a202c;background:rgba(255,255,255,.8);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .3s cubic-bezier(.4,0,.2,1);box-sizing:border-box;box-shadow:inset 0 2px 8px #0000000a}.journal-textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 4px #667eea26,0 4px 16px #667eea1a;background:rgba(255,255,255,.95);color:#1a202c;transform:translateY(-2px)}.journal-textarea::placeholder{color:#9ca3af;font-style:italic;font-size:15px}.journal-actions{display:flex;gap:12px;margin-top:16px}.journal-actions .primary-button{flex:1;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:16px 28px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:16px;position:relative;overflow:hidden;box-shadow:0 4px 16px #667eea4d}.journal-actions .primary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.journal-actions .primary-button:hover:before{left:100%}.journal-actions .primary-button:hover:not(:disabled){background:linear-gradient(135deg,#5a67d8 0%,#6b46c1 100%);transform:translateY(-3px);box-shadow:0 8px 25px #667eea66}.journal-actions .primary-button:disabled{background:#e2e8f0;color:#a0aec0;cursor:not-allowed;transform:none;box-shadow:none}.journal-actions .secondary-button{background:rgba(255,255,255,.9);color:#4a5568;border:2px solid rgba(226,232,240,.5);padding:16px 28px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:16px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.journal-actions .secondary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.journal-actions .secondary-button:hover:before{left:100%}.journal-actions .secondary-button:hover{background:rgba(247,250,252,.95);border-color:#cbd5e0b3;transform:translateY(-2px);box-shadow:0 4px 15px #0000001a}.journal-actions .primary-button:active:not(:disabled){transform:translateY(1px);box-shadow:0 2px 8px #3182ce66}.journal-actions .secondary-button:active{transform:translateY(1px);box-shadow:0 1px 4px #0000001a}.journal-history{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.journal-history h3{margin:0 0 20px;color:#1a202c;font-size:20px;font-weight:700;text-align:center}.journal-list{display:flex;flex-direction:column;gap:16px;max-height:600px;overflow-y:auto;padding-right:8px}.journal-list::-webkit-scrollbar{width:6px}.journal-list::-webkit-scrollbar-track{background:#f1f5f9;border-radius:3px}.journal-list::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:3px}.journal-list::-webkit-scrollbar-thumb:hover{background:#a0aec0}.journal-entry-card{background:#fafbff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;transition:all .2s ease;position:relative;overflow:hidden}.journal-entry-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(to bottom,#3182ce,#4299e1)}.journal-entry-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px #0000001f;border-color:#cbd5e0}.entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.entry-date{font-size:14px;color:#4a5568;font-weight:600;background:white;padding:4px 12px;border-radius:20px;border:1px solid #e2e8f0}.entry-actions{display:flex;gap:8px}.edit-button,.delete-button{width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease}.edit-button{background:#e0f2fe;color:#0369a1}.edit-button:hover{background:#0ea5e9;color:#fff;transform:scale(1.1)}.delete-button{background:#fef2f2;color:#dc2626}.delete-button:hover{background:#ef4444;color:#fff;transform:scale(1.1)}.edit-button:active,.delete-button:active{transform:scale(.95);transition:all .1s ease}.entry-content{color:#1a202c;line-height:1.6;margin-bottom:12px;font-size:15px;white-space:pre-wrap}.entry-mood{display:inline-block;padding:6px 12px;background:white;border:1px solid #e2e8f0;border-radius:20px;font-size:13px;color:#4a5568;font-weight:600}.empty-state{text-align:center;padding:40px 20px;color:#718096;font-style:italic;background:#f8fafc;border-radius:12px;border:2px dashed #e2e8f0}.loading{text-align:center;padding:40px 20px;color:#718096;font-size:16px}@media (max-width: 768px){.journal-container{flex-direction:column;grid-template-columns:1fr;gap:24px}.mood-options{grid-template-columns:repeat(3,1fr);gap:8px}.mood-option{padding:12px 6px}.mood-emoji{font-size:24px}.mood-label{font-size:12px}.mood-description{font-size:11px}.journal-form,.journal-history{width:100%;padding:16px}.journal-textarea{min-height:150px;font-size:16px}.journal-actions{flex-direction:column;gap:.5rem}.journal-actions button{width:100%}.journal-entry-card{padding:1rem}.entry-header{flex-direction:column;align-items:flex-start;gap:.5rem}.entry-actions{align-self:flex-end}}@media (max-width: 480px){.mood-options{grid-template-columns:repeat(2,1fr)}}.mypage{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.mypage-content{max-width:1200px;margin:0 auto;padding:30px 20px}.profile-hero{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:16px;padding:32px;color:#fff;margin-bottom:24px;display:flex;align-items:center;gap:24px;box-shadow:0 8px 32px #0000001a;position:relative;overflow:hidden}.profile-avatar{flex-shrink:0}.avatar-circle{width:80px;height:80px;border-radius:50%;background:rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:3px solid rgba(255,255,255,.3);box-shadow:0 4px 20px #0000001a}.profile-header{flex:1;min-width:0}.profile-name{font-size:2rem;font-weight:700;margin:0 0 12px;line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,.2)}.profile-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.badge{padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}.admin-badge{background:rgba(255,107,107,.2);color:#fff;border-color:#ff6b6b4d}.member-badge{background:rgba(255,255,255,.2);color:#fff}.level-badge{background:rgba(76,175,80,.2);color:#fff;border-color:#4caf504d}.profile-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px}.profile-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1)}.profile-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid rgba(226,232,240,.8)}.card-header h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0}.stats-period{color:#718096;font-size:.9rem;font-weight:500}.info-grid{display:grid;grid-template-columns:1fr;gap:16px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid rgba(226,232,240,.5)}.info-item:last-child{border-bottom:none}.info-label{color:#4a5568;font-weight:500;font-size:.9rem}.info-value{color:#2d3748;font-weight:600;text-align:right;word-break:break-all}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.stat-card{background:linear-gradient(135deg,#f8f9ff 0%,#ffffff 100%);border-radius:12px;padding:20px;display:flex;align-items:flex-start;gap:16px;border:1px solid rgba(226,232,240,.8);transition:all .3s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000001a;border-color:#667eea4d}.stat-icon{font-size:2rem;line-height:1;flex-shrink:0}.stat-content{flex:1;min-width:0}.stat-content h4{color:#4a5568;font-size:.9rem;font-weight:500;margin:0 0 8px;line-height:1.2}.stat-number{font-size:2rem;font-weight:700;color:#2d3748;line-height:1;margin-bottom:4px}.stat-unit{color:#718096;font-size:.8rem;font-weight:500;margin-bottom:6px}.stat-detail{color:#718096;font-size:.75rem;line-height:1.3}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.achievement-badge{background:linear-gradient(135deg,#ffffff 0%,#f8f9ff 100%);border:1px solid rgba(226,232,240,.8);border-radius:12px;padding:16px;text-align:center;transition:all .3s ease}.achievement-badge:hover{transform:translateY(-2px);box-shadow:0 4px 15px #0000001a;border-color:#667eea4d}.achievement-badge.locked{opacity:.5;background:#f8f9fa;border-color:#e9ecef}.achievement-icon{font-size:2rem;margin-bottom:8px;line-height:1}.achievement-name{color:#2d3748;font-weight:600;font-size:.9rem;margin-bottom:4px;line-height:1.2}.achievement-desc{color:#718096;font-size:.75rem;line-height:1.3}.plan-name-section{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.plan-name{color:#2d3748;font-size:1.3rem;font-weight:700;margin:0}.plan-price{color:#667eea;font-weight:600;font-size:1rem}.plan-description{color:#4a5568;line-height:1.5;margin-bottom:16px}.plan-features h5{color:#2d3748;font-size:.9rem;font-weight:600;margin:0 0 8px}.features-list{list-style:none;padding:0;margin:0}.feature-item{color:#4a5568;font-size:.9rem;line-height:1.4;margin-bottom:4px}.plan-status{margin-top:12px;padding:8px 12px;border-radius:8px;font-size:.85rem;font-weight:500}.plan-status.active{background:rgba(56,161,105,.1);color:#38a169}.activity-list{display:flex;flex-direction:column;gap:12px}.activity-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(226,232,240,.5)}.activity-icon{font-size:1.5rem;flex-shrink:0}.activity-content{flex:1;min-width:0}.activity-title{color:#2d3748;font-weight:500;font-size:.9rem;line-height:1.3;margin-bottom:2px}.activity-date{color:#718096;font-size:.8rem;line-height:1.2}.progress-dashboard{display:grid;gap:24px}.journal-container{display:flex;flex-direction:column;gap:2rem}.journal-form{background:white;border-radius:12px;padding:1.5rem;box-shadow:0 4px 20px #00000014}.journal-textarea{width:100%;min-height:150px;padding:1rem;border:1px solid #e9ecef;border-radius:8px;font-family:inherit;font-size:1rem;line-height:1.5;resize:vertical;transition:border-color .3s ease}.journal-textarea:focus{outline:none;border-color:#74b9ff;box-shadow:0 0 0 3px #74b9ff1a}.journal-actions{display:flex;gap:1rem;margin-top:1rem}.journal-history h3{color:#2d3436;font-size:1.2rem;margin-bottom:1rem}.journal-list{display:flex;flex-direction:column;gap:1rem}.journal-entry-card{background:white;border:1px solid #e9ecef;border-radius:12px;padding:1rem;box-shadow:0 2px 8px #0000000d;transition:all .3s ease}.journal-entry-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #f1f3f4}.entry-date{color:#636e72;font-size:.9rem;font-weight:500}.entry-actions{display:flex;gap:.5rem}.edit-button,.delete-button{background:none;border:none;cursor:pointer;padding:.5rem;border-radius:6px;transition:background-color .2s;font-size:1.1rem}.edit-button:hover{background-color:#e3f2fd}.delete-button:hover{background-color:#ffebee}.entry-content{line-height:1.6;color:#2d3436;white-space:pre-wrap;margin-bottom:.5rem}.entry-mood{color:#74b9ff;font-size:.85rem;font-style:italic;margin-top:.5rem;padding-top:.5rem;border-top:1px solid #f8f9fa}.empty-state{text-align:center;color:#636e72;padding:3rem 2rem;font-style:italic;background:#f8f9fa;border-radius:12px;border:2px dashed #ddd}.loading{text-align:center;color:#636e72;padding:2rem}.action-card{background:linear-gradient(135deg,#ffffff 0%,#f8f9fa 100%);border:1px solid #e9ecef;border-radius:16px;padding:24px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #00000014;position:relative;overflow:hidden}.action-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(116,185,255,.1),transparent);transition:left .5s ease}.action-card:hover:before{left:100%}.action-card:hover{transform:translateY(-8px);box-shadow:0 12px 35px #74b9ff33;border-color:#74b9ff}.action-card h3{color:#2d3436;margin-bottom:8px;font-size:18px;font-weight:600}.action-card p{color:#636e72;margin:0;font-size:14px;line-height:1.5}.plan-info{background:linear-gradient(135deg,#e8f5e8 0%,#f0f8f0 100%);border:1px solid #c8e6c8;border-radius:12px;padding:1.5rem;margin-bottom:2rem;box-shadow:0 2px 8px #0000000d}.plan-info h3{color:#2d5016;margin-bottom:1rem;font-size:1.1rem}.plan-details{display:flex;gap:1rem;align-items:center;margin-bottom:.5rem}.plan-name{background:#4caf50;color:#fff;padding:.5rem 1rem;border-radius:20px;font-weight:500;font-size:.9rem}.plan-price{color:#2e7d32;font-weight:600;font-size:1.1rem}.plan-description{color:#4a4a4a;margin:.5rem 0 0;font-size:.9rem;line-height:1.4}.plan-badge{background:linear-gradient(135deg,#4caf50 0%,#66bb6a 100%);color:#fff;padding:.4rem .8rem;border-radius:15px;font-size:.8rem;font-weight:500;margin-right:12px;box-shadow:0 2px 6px #4caf504d}.action-card:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:0 4px 20px #0000000d!important}.action-card:disabled:hover{transform:none!important;box-shadow:0 4px 20px #0000000d!important;border-color:#e9ecef!important}.feature-locked{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#ff6b6b 0%,#ee5a52 100%);color:#fff;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 2px 8px #ff6b6b4d;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.8}to{transform:scale(1);opacity:1}}.access-denied{text-align:center;padding:3rem 2rem;background:#f8f9fa;border-radius:12px;border:2px dashed #dee2e6}.access-denied h2{color:#495057;margin-bottom:1rem}.access-denied p{color:#6c757d;margin-bottom:1rem;line-height:1.5}.primary-button{background:linear-gradient(135deg,#74b9ff 0%,#0984e3 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #74b9ff4d}.primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #74b9ff66}.ai-chat-section{--bg-primary: #ffffff;--bg-secondary: #f5f5f5;--text-primary: #333333;--text-secondary: #666666;--border-color: #e0e0e0;--button-bg: #007bff;--button-text: #ffffff;--user-msg-bg: #007bff;--bot-msg-bg: #f1f1f1;--example-btn-bg: #ffffff;--example-btn-border: #e0e0e0;background-color:var(--bg-primary);color:var(--text-primary);isolation:isolate;contain:style;width:100%;overflow-x:hidden}.chat-layout{display:flex;gap:24px;height:600px;width:100%;max-width:100%;box-sizing:border-box}.chat-container{flex:2;display:flex;flex-direction:column;background-color:var(--bg-primary);border:1px solid var(--border-color);border-radius:8px}.chat-messages{flex:1;overflow-y:auto;padding:16px;background-color:var(--bg-secondary)}.message{margin-bottom:16px;display:flex;flex-direction:column}.message.user{align-items:flex-end}.message.bot{align-items:flex-start}.message-content{max-width:70%;padding:12px 16px;border-radius:18px;margin-bottom:4px;word-wrap:break-word;line-height:1.4}.message.user .message-content{background-color:var(--user-msg-bg);color:var(--button-text);border-bottom-right-radius:6px}.message.bot .message-content{background-color:var(--bot-msg-bg);color:var(--text-primary);border:1px solid var(--border-color);border-bottom-left-radius:6px}.message-content.loading{background-color:var(--bot-msg-bg);color:var(--text-primary);border:1px solid var(--border-color)}.typing-indicator{display:flex;gap:4px;align-items:center}.typing-indicator span{width:8px;height:8px;border-radius:50%;background-color:var(--text-secondary);animation:typing 1.4s infinite ease-in-out}.typing-indicator span:nth-child(2){animation-delay:.2s}.typing-indicator span:nth-child(3){animation-delay:.4s}@keyframes typing{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-10px);opacity:1}}.message-time{color:var(--text-secondary);font-size:.75rem;margin-top:2px;opacity:.7}.message.user .message-time{text-align:right}.message.bot .message-time{text-align:left}.chat-input-form{padding:16px;border-top:1px solid var(--border-color);display:flex;gap:12px}.chat-input{flex:1;padding:12px;border-radius:8px;background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color)}.chat-input::placeholder{color:var(--text-secondary)}.ai-chat-section .primary-button{background-color:var(--button-bg);color:var(--button-text);border:none}.mood-examples{flex:1;min-width:0;background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);color:var(--text-primary);border-radius:16px;padding:24px;box-shadow:0 4px 20px #0000000d;overflow-y:auto;box-sizing:border-box}.mood-examples h3{color:var(--text-primary);margin-bottom:8px;font-size:1.2rem;font-weight:600}.mood-examples p{color:var(--text-secondary);margin-bottom:20px;font-size:.9rem}.examples-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:16px}.example-button{background:linear-gradient(135deg,var(--example-btn-bg) 0%,var(--bg-secondary) 100%);color:var(--text-primary);border:1px solid var(--example-btn-border);border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:12px;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden;box-shadow:0 2px 8px #0000001a;text-align:left}.example-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026;border-color:var(--button-bg)}.example-button:hover .example-emoji{transform:scale(1.1)}.example-button:active{transform:translateY(0);box-shadow:0 2px 6px #0000001a}.example-button:disabled{opacity:.5;cursor:not-allowed;transform:none}.example-button:disabled:hover{transform:none;box-shadow:0 2px 8px #0000001a}.example-emoji{font-size:1.5rem;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:transform .3s ease;flex-shrink:0}.example-text{color:var(--text-primary);font-weight:500;line-height:1.3;font-size:.9rem;flex:1}@media (max-width: 768px){.mypage-header{flex-direction:column;gap:1rem;padding:1rem}.header-right{flex-direction:column;width:100%;gap:.5rem}.user-greeting{order:-1;text-align:center}.admin-button,.logout-button{width:100%;padding:.75rem}.mypage-content{padding:1rem}.content-section{padding:1.5rem}.quick-actions{grid-template-columns:1fr;gap:1rem}.action-card{padding:1.5rem}.profile-hero{padding:24px;flex-direction:column;text-align:center;gap:16px}.avatar-circle{width:70px;height:70px;font-size:1.8rem}.profile-name{font-size:1.8rem}.profile-content{grid-template-columns:1fr;gap:20px}.stats-grid,.achievements-grid{grid-template-columns:repeat(2,1fr);gap:12px}.info-item{flex-direction:column;align-items:flex-start;gap:4px;text-align:left}.info-value{text-align:left;word-break:break-word}}@media (prefers-color-scheme: dark){.mypage-container{background:#1a1a1a;color:#fff}.mypage-header{background:#2d2d2d;color:#fff}.mypage-content{color:#fff}.journal-form,.journal-history{background:#2d2d2d;color:#fff}.journal-textarea{background:#1a1a1a;color:#fff;border-color:#404040}.journal-textarea::placeholder{color:#ccc}.journal-textarea:focus{border-color:#667eea}.journal-history h3{color:#fff}.journal-entry-card{background:#1a1a1a;border-color:#404040}.journal-entry-card:hover{border-color:#667eea}.entry-header{border-bottom-color:#404040}.entry-date{color:#ccc}.entry-content{color:#fff}.entry-mood{background:rgba(102,126,234,.2);color:#a0c4ff}.empty-state{background:#1a1a1a;color:#ccc;border-color:#404040}.loading{color:#ccc}.alert,.notification{background-color:#2d2d2d!important;color:#fff!important;border:1px solid #404040!important}.ai-chat-section{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--text-primary: #ffffff;--text-secondary: #cccccc;--border-color: #404040;--button-bg: #0d6efd;--button-text: #ffffff;--user-msg-bg: #0d6efd;--bot-msg-bg: #2d2d2d;--example-btn-bg: #2d2d2d;--example-btn-border: #404040}.chat-container{background-color:var(--bg-primary);border:1px solid var(--border-color)}.chat-messages{background-color:var(--bg-secondary)}.message.bot .message-content{background-color:var(--bot-msg-bg)}.message-time{color:var(--text-secondary)}.chat-input{background-color:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-color)}.chat-input::placeholder{color:var(--text-secondary)}.profile-hero{background:linear-gradient(135deg,#4a5568 0%,#2d3748 100%)}.profile-card{background:#2d2d2d;color:#fff;border:1px solid #404040}.card-header{border-bottom-color:#404040}.card-header h3{color:#fff}.stats-period{color:#ccc}.info-item{border-bottom-color:#404040}.info-label{color:#ccc}.info-value{color:#fff}.stat-card{background:#1a1a1a;border-color:#404040}.stat-card:hover{border-color:#667eea}.stat-content h4{color:#ccc}.stat-number{color:#fff}.stat-unit,.stat-detail{color:#ccc}.achievement-badge{background:#1a1a1a;border-color:#404040}.achievement-badge:hover{border-color:#667eea}.achievement-name{color:#fff}.achievement-desc{color:#ccc}.plan-name{color:#fff}.plan-description,.feature-item{color:#ccc}.activity-title{color:#fff}.activity-date{color:#ccc}@media (max-width: 768px){.chat-layout{flex-direction:column;height:auto;gap:16px}.chat-container{height:400px;min-height:300px}.mood-examples{order:-1;max-height:250px;padding:16px}.examples-grid{grid-template-columns:repeat(2,1fr);gap:8px}.example-button{flex-direction:column;text-align:center;padding:10px 8px;gap:6px}.example-emoji{font-size:1.2rem}.example-text{font-size:.75rem;line-height:1.2}.chat-input-form{padding:12px;gap:8px}.chat-input{padding:10px;font-size:16px}.ai-chat-section .primary-button{padding:10px 16px;font-size:14px}}@media (max-width: 480px){.ai-chat-section{padding:16px}.chat-layout{flex-direction:column;height:auto;gap:16px;width:100%}.chat-container{height:350px;min-height:250px;width:100%;margin:0}.chat-messages{padding:12px}.message{margin-bottom:12px}.message-content{padding:10px 12px;font-size:14px;max-width:85%}.mood-examples{padding:12px;max-height:200px;width:100%;margin:0;box-sizing:border-box}.mood-examples h3{font-size:1rem;margin-bottom:6px}.mood-examples p{font-size:.8rem;margin-bottom:12px}.examples-grid{grid-template-columns:1fr;gap:6px;width:100%;margin:0}.example-button{padding:8px 12px;gap:8px;flex-direction:row;text-align:left;width:100%;box-sizing:border-box;justify-content:flex-start}.example-emoji{font-size:1.1rem;flex-shrink:0}.example-text{font-size:.8rem;flex:1;text-align:left}.chat-input-form{padding:10px;flex-direction:column;gap:10px;width:100%;box-sizing:border-box}.chat-input{padding:12px;font-size:16px;width:100%;box-sizing:border-box}.ai-chat-section .primary-button{padding:12px;font-size:14px;width:100%;box-sizing:border-box}.profile-hero{padding:20px;margin-bottom:20px}.avatar-circle{width:60px;height:60px;font-size:1.5rem}.profile-name{font-size:1.5rem}.profile-badges{justify-content:center}.profile-content{gap:16px}.profile-card{padding:16px}.card-header{flex-direction:column;align-items:flex-start;gap:8px;text-align:left}.card-header h3{font-size:1.1rem}.stats-grid{grid-template-columns:1fr;gap:12px}.stat-card{padding:16px;flex-direction:column;text-align:center;gap:12px}.stat-icon,.stat-number{font-size:1.8rem}.achievements-grid{grid-template-columns:1fr;gap:12px}.achievement-badge{padding:12px}.plan-name-section{flex-direction:column;align-items:flex-start;gap:8px}.plan-name{font-size:1.1rem}.plan-price{font-size:.9rem}.activity-item{padding:8px 0}.activity-icon{font-size:1.3rem}.activity-title{font-size:.85rem}.activity-date{font-size:.75rem}}}._adminHeader_xf1gx_1{container-type:inline-size;display:flex;justify-content:space-between;align-items:center;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:20px 32px;box-shadow:0 4px 20px #00000014;border-bottom:1px solid rgba(255,255,255,.2);position:sticky;top:0;z-index:100}._headerLeft_xf1gx_15 ._headerLogo_xf1gx_16{margin:0;color:#1a202c;font-size:20px;font-weight:700;display:flex;align-items:center;gap:8px}._headerRight_xf1gx_26{display:flex;align-items:center;gap:16px}._headerRight_xf1gx_26 ._userGreeting_xf1gx_30{font-size:14px;color:#4a5568;font-weight:500}._buttons_xf1gx_36{display:flex;align-items:center;gap:16px}._button_xf1gx_36{min-width:120px;padding:12px 20px;border-radius:12px;font-weight:500;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);border:none}._switchButton_xf1gx_52{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;position:relative;overflow:hidden}._switchButton_xf1gx_52:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}._switchButton_xf1gx_52:hover:before{left:100%}._switchButton_xf1gx_52:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}._logoutButton_xf1gx_84{background:linear-gradient(135deg,#e53e3e 0%,#ff6b6b 100%);color:#fff;position:relative;overflow:hidden}._logoutButton_xf1gx_84:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}._logoutButton_xf1gx_84:hover:before{left:100%}._logoutButton_xf1gx_84:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e53e3e66}@media (max-width: 768px){._adminHeader_xf1gx_1{flex-direction:column;padding:16px}._headerRight_xf1gx_26{width:100%;flex-direction:column}._buttons_xf1gx_36{width:100%;gap:8px;justify-content:center}._button_xf1gx_36{min-width:calc(50% - 16px)}}@media (max-width: 480px){._adminHeader_xf1gx_1{padding:12px}._headerLeft_xf1gx_15 ._headerLogo_xf1gx_16{font-size:18px}._userGreeting_xf1gx_30{font-size:12px;margin-bottom:8px}._button_xf1gx_36{padding:10px 16px;font-size:13px;min-width:100%;margin:2px 0}._buttons_xf1gx_36{flex-direction:column;gap:4px}}._navigation_xf1gx_161{display:flex;justify-content:center;gap:8px;padding:20px;background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.2);box-shadow:0 4px 20px #00000014;flex-wrap:wrap}._navButton_xf1gx_173{padding:12px 24px;border:none;background:rgba(255,255,255,.7);color:#4a5568;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}._navButton_xf1gx_173:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .6s}._navButton_xf1gx_173:hover:before{left:100%}._navButton_xf1gx_173:hover{background:rgba(255,255,255,.9);transform:translateY(-2px);box-shadow:0 8px 25px #00000026}._navButton_xf1gx_173._active_xf1gx_209{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;box-shadow:0 8px 25px #667eea66}@media (max-width: 768px){._navigation_xf1gx_161{padding:15px;gap:6px}._navButton_xf1gx_173{padding:10px 16px;font-size:13px}}@media (max-width: 480px){._navigation_xf1gx_161{flex-direction:column;gap:8px}._navButton_xf1gx_173{width:100%}}.admin-page{min-height:100vh;background:linear-gradient(135deg,#f5f7fa 0%,#c3cfe2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);transform:scaleX(0);transition:transform .3s ease}.stat-card:hover:before{transform:scaleX(1)}.stat-icon{font-size:2.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;color:#fff;flex-shrink:0}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;margin-top:30px}.metric-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.metric-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px #667eea26}.table-container{border-radius:16px;overflow:hidden;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-table{width:100%;border-collapse:collapse;background:transparent}.admin-table th,.admin-table td{padding:16px;text-align:left;border-bottom:1px solid rgba(226,232,240,.3)}.admin-table th{background:rgba(247,250,252,.8);font-weight:600;color:#4a5568;font-size:14px}.admin-table tr:hover{background:rgba(247,250,252,.5)}.status{padding:6px 12px;border-radius:12px;font-size:12px;font-weight:600;display:inline-block}.primary-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;position:relative;overflow:hidden}.primary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.primary-button:hover:before{left:100%}.primary-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.secondary-button{background:rgba(255,255,255,.9);color:#4a5568;border:1px solid rgba(226,232,240,.5);padding:12px 24px;border-radius:12px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;position:relative;overflow:hidden}.secondary-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);transition:left .5s ease}.secondary-button:hover:before{left:100%}.secondary-button:hover{transform:translateY(-2px);background:rgba(255,255,255,1);box-shadow:0 4px 15px #0000001a}.danger-button{background:linear-gradient(135deg,#e53e3e 0%,#ff6b6b 100%);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:500;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-size:14px;position:relative;overflow:hidden}.danger-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.danger-button:hover:before{left:100%}.danger-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e53e3e66}.loading-message{text-align:center;padding:60px;color:#718096;font-size:1.1rem}.error-message{text-align:center;padding:40px;color:#e53e3e;background:rgba(254,215,215,.3);border-radius:12px;margin:20px 0}.warning-message{background:rgba(255,251,235,.8);border:1px solid rgba(251,191,36,.3);border-radius:12px;padding:16px;margin:20px 0;color:#92400e}@media (max-width: 1024px){.admin-content{padding:20px 15px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.metrics-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width: 768px){.admin-section{padding:24px 20px}.stats-overview{grid-template-columns:1fr;gap:16px}.dashboard-grid{grid-template-columns:1fr;gap:20px}.metrics-grid{grid-template-columns:1fr}}.access-denied{display:flex;justify-content:center;align-items:center;min-height:60vh;padding:40px}.access-denied-content{text-align:center;max-width:500px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:48px 40px;box-shadow:0 12px 40px #00000026;border:1px solid rgba(255,255,255,.3)}.feature-restricted{display:flex;justify-content:center;align-items:flex-start;min-height:50vh;padding:40px}.feature-restricted-content{text-align:center;max-width:600px;background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;padding:48px 40px;box-shadow:0 12px 40px #00000026;border:1px solid rgba(255,255,255,.3)}.feature-restricted-content h2{color:#f6ad55;margin-bottom:24px;font-size:1.8rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px}.feature-restricted-content p{color:#4a5568;margin-bottom:16px;line-height:1.6;font-size:1rem}.feature-info{background:rgba(102,126,234,.05);border-radius:16px;padding:24px;margin:24px 0;text-align:left}.feature-info h4{color:#2d3748;margin-bottom:12px;font-size:1.1rem;font-weight:600}.feature-info ul{list-style:none;padding:0;margin:0}.feature-info li{color:#4a5568;padding:8px 0;border-bottom:1px solid rgba(226,232,240,.5);display:flex;align-items:center;gap:8px}.feature-info li:last-child{border-bottom:none}.feature-info li:before{content:"✓";color:#667eea;font-weight:700;font-size:1.1rem}.feature-restricted-actions{display:flex;justify-content:center;gap:16px;margin-top:32px}.feature-restricted-actions .primary-button,.feature-restricted-actions .secondary-button{padding:14px 28px;font-size:1rem;border-radius:16px;min-width:160px}.access-denied-content h2{color:#e53e3e;margin-bottom:24px;font-size:1.8rem;font-weight:600;display:flex;align-items:center;justify-content:center;gap:12px}.access-denied-content p{color:#4a5568;margin-bottom:16px;line-height:1.6;font-size:1rem}.access-denied-content p:last-of-type{margin-bottom:32px;font-weight:500;color:#2d3748}.access-denied-actions{display:flex;justify-content:center;gap:16px}.access-denied-actions .primary-button{padding:14px 28px;font-size:1rem;border-radius:16px;min-width:180px}@media (max-width: 768px){.access-denied-content,.feature-restricted-content{padding:32px 24px;margin:0 16px}.access-denied-content h2,.feature-restricted-content h2{font-size:1.5rem}.access-denied-actions,.feature-restricted-actions{flex-direction:column;align-items:center}.access-denied-actions .primary-button,.feature-restricted-actions .primary-button,.feature-restricted-actions .secondary-button{width:100%;max-width:240px}.feature-info{padding:20px;margin:20px 0}.feature-info h4{font-size:1rem}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.admin-section{animation:fadeIn .6s ease-out}.dashboard-card{animation:fadeIn .8s ease-out}.stat-card{animation:fadeIn .7s ease-out}.access-denied-content,.feature-restricted-content{animation:fadeIn .8s ease-out}.admin-page{min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.admin-navigation{display:flex;justify-content:center;gap:8px;padding:20px;background:rgba(255,255,255,.15);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.2);box-shadow:0 4px 20px #0000001a;flex-wrap:wrap}.admin-navigation .nav-button{padding:12px 24px;border:none;background:rgba(255,255,255,.2);color:#fff;border-radius:12px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);font-weight:500;font-size:14px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:hidden}.admin-navigation .nav-button:hover{background:rgba(255,255,255,.3);transform:translateY(-2px);box-shadow:0 8px 25px #0003}.admin-navigation .nav-button.active{background:rgba(255,255,255,.9);color:#667eea;box-shadow:0 8px 25px #ffffff4d}.admin-content{max-width:1400px;margin:0 auto;padding:30px 20px}.switch-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 20px;border-radius:12px;font-weight:500;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #667eea4d}.switch-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea66}.logout-button{background:linear-gradient(135deg,#e53e3e 0%,#ff6b6b 100%);color:#fff;border:none;padding:12px 20px;border-radius:12px;font-weight:500;font-size:14px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 4px 15px #e53e3e4d;margin-left:12px}.logout-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #e53e3e66}.admin-section{background:rgba(255,255,255,.95);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:20px;padding:40px;margin:20px 0;box-shadow:0 8px 32px #0000001a;border:1px solid rgba(255,255,255,.3)}.admin-section h2{color:#2d3748;margin-bottom:30px;font-size:2rem;font-weight:600;display:flex;align-items:center;gap:12px}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:30px;width:100%}.stat-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #667eea26}.stat-icon{font-size:2.5rem;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;color:#fff}.stat-info h3{margin:0 0 8px;font-size:2rem;font-weight:700;color:#2d3748}.stat-info p{margin:0;color:#718096;font-size:.9rem;font-weight:500}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px;margin-top:30px;width:100%}.dashboard-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #667eea26}.dashboard-card h3{color:#2d3748;margin-bottom:20px;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:8px}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}.stats-overview{grid-template-columns:repeat(2,1fr);gap:16px}}@media (max-width: 768px){.admin-content{padding:20px 15px}.admin-section{padding:24px 20px}.admin-section h2{font-size:1.5rem;margin-bottom:20px}.stats-overview{grid-template-columns:1fr;gap:16px}.dashboard-grid{grid-template-columns:1fr;gap:20px;margin-top:20px}.dashboard-card{padding:20px}.dashboard-card h3{font-size:1.1rem}.stat-card{padding:20px;gap:12px}.stat-icon{font-size:2rem;width:50px;height:50px}.stat-content h4{font-size:.85rem}.stat-content p{font-size:1.3rem}}@media (max-width: 480px){.admin-content{padding:15px 10px;width:100%;overflow-x:hidden}.admin-section{padding:20px 15px;border-radius:12px;width:100%;box-sizing:border-box}.dashboard-grid{gap:15px;width:100%}.dashboard-card{padding:16px;border-radius:12px;width:100%;box-sizing:border-box}.dashboard-overview{padding:0;width:100%}.stat-card{padding:16px;flex-direction:row;align-items:center}.stat-icon{font-size:1.8rem;width:45px;height:45px}.stat-content h4{font-size:.8rem}.stat-content p{font-size:1.2rem}}.nav-button.active{background:linear-gradient(135deg,#fd79a8 0%,#fdcb6e 100%);box-shadow:0 6px 20px #fd79a866;transform:translateY(-2px)}.nav-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.nav-button:hover:before{left:100%}.nav-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #6c5ce766}.nav-button.active:hover{box-shadow:0 8px 25px #fd79a880}.user-greeting{color:#2d3436;font-weight:500;margin-right:16px}.admin-page{min-height:100vh;background:#f5f7fa;font-family:BIZ UDPGothic,Noto Sans JP,Hiragino Kaku Gothic ProN,Hiragino Sans,Meiryo,sans-serif}.admin-page .App{max-width:none;margin:0;padding:0}.admin-header{display:flex;justify-content:space-between;align-items:center;background:white;padding:16px 32px;box-shadow:0 2px 12px #00000014;margin-bottom:24px;border-bottom:1px solid #e2e8f0}.header-left h1{margin:0;color:#1a202c;font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:8px}.header-right{display:flex;align-items:center;gap:12px}.user-greeting{font-size:14px;color:#4a5568;font-weight:500}.admin-navigation{display:flex;justify-content:center;gap:8px;margin-bottom:32px;padding:0 24px;flex-wrap:wrap}.nav-button{padding:12px 20px;border:2px solid #e2e8f0;background:white;color:#4a5568;border-radius:8px;cursor:pointer;transition:all .2s ease;font-weight:600;font-size:14px;box-shadow:0 1px 3px #0000000d}.nav-button:hover{background:#f7fafc;border-color:#cbd5e0;transform:translateY(-1px)}.nav-button.active{background:#3182ce;color:#fff;border-color:#3182ce;box-shadow:0 4px 12px #3182ce26}.admin-content{max-width:1200px;margin:0 auto;padding:0 24px}.admin-section{background:white;padding:32px;border-radius:12px;box-shadow:0 4px 16px #0000000f;border:1px solid #e2e8f0;margin-bottom:24px}.admin-section h2{color:#1a202c;margin:0 0 24px;font-size:1.5rem;font-weight:700;border-bottom:2px solid #e2e8f0;padding-bottom:12px;display:flex;align-items:center;gap:8px}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:32px}.overview-stat{background:white;border-radius:12px;padding:24px;display:flex;align-items:center;gap:16px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0;transition:all .2s ease}.overview-stat:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.stat-icon{width:48px;height:48px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}.stat-icon.users{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff}.stat-icon.active{background:linear-gradient(135deg,#48bb78 0%,#38a169 100%);color:#fff}.stat-icon.sessions{background:linear-gradient(135deg,#ed8936 0%,#dd6b20 100%);color:#fff}.stat-icon.health{background:linear-gradient(135deg,#f093fb 0%,#f5576c 100%);color:#fff}.stat-content h3{margin:0 0 4px;font-size:14px;font-weight:600;color:#718096}.stat-value{font-size:28px;font-weight:700;color:#1a202c;line-height:1;margin-bottom:4px}.stat-change{font-size:12px;font-weight:600;padding:2px 8px;border-radius:12px}.stat-change.positive{background:#c6f6d5;color:#22543d}.stat-change.neutral{background:#e2e8f0;color:#4a5568}.analytics-dashboard{display:grid;gap:24px}.analytics-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px;padding:24px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:16px;color:#fff;position:relative;overflow:hidden}.analytics-header:before{content:"";position:absolute;top:-50%;right:-20%;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;animation:float 8s ease-in-out infinite}.analytics-header h2{margin:0 0 8px;font-size:24px;font-weight:700;position:relative;z-index:2}.analytics-header p{margin:0;opacity:.9;font-size:14px;position:relative;z-index:2}.analytics-controls{display:flex;gap:12px;align-items:center;position:relative;z-index:2}.date-range-select{padding:10px 16px;border:2px solid rgba(255,255,255,.3);border-radius:8px;background:rgba(255,255,255,.1);color:#fff;font-size:14px;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.date-range-select:focus{outline:none;border-color:#fff9;background:rgba(255,255,255,.2)}.date-range-select option{background:#1a202c;color:#fff}.refresh-button{background:rgba(255,255,255,.2);color:#fff;border:2px solid rgba(255,255,255,.3);padding:10px 16px;border-radius:8px;cursor:pointer;font-size:14px;font-weight:600;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);display:flex;align-items:center;gap:6px}.refresh-button:hover{background:rgba(255,255,255,.3);transform:translateY(-1px)}.metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:32px}.metric-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0;transition:all .3s ease;position:relative;overflow:hidden}.metric-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#667eea,#764ba2)}.metric-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px #0000001f}.metric-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.metric-icon{font-size:24px;background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:12px;padding:8px;display:flex;align-items:center;justify-content:center;width:48px;height:48px}.metric-title{font-size:14px;font-weight:600;color:#4a5568}.metric-value{font-size:32px;font-weight:800;color:#1a202c;margin-bottom:12px;line-height:1}.metric-footer{display:flex;align-items:center;gap:8px}.metric-change{padding:4px 8px;border-radius:12px;font-size:12px;font-weight:600}.metric-change.positive{background:#c6f6d5;color:#22543d}.metric-change.negative{background:#fed7d7;color:#742a2a}.metric-description{font-size:12px;color:#718096}.charts-section{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin-bottom:32px}.chart-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.chart-card h3{margin:0 0 20px;color:#1a202c;font-size:18px;font-weight:700}.chart-placeholder{position:relative}.chart-legend{display:flex;gap:20px;margin-bottom:20px;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-size:12px;color:#4a5568;font-weight:500}.legend-color{width:12px;height:12px;border-radius:3px}.legend-color.users{background:linear-gradient(135deg,#48bb78 0%,#38a169 100%)}.legend-color.sessions{background:linear-gradient(135deg,#3182ce 0%,#2c5aa0 100%)}.legend-color.checks{background:linear-gradient(135deg,#ed8936 0%,#dd6b20 100%)}.sample-chart{display:flex;align-items:end;gap:16px;height:200px;padding:20px 0;border-bottom:2px solid #e2e8f0;border-left:2px solid #e2e8f0;position:relative}.chart-bar-group{display:flex;flex-direction:column;align-items:center;flex:1}.chart-bars{display:flex;align-items:end;gap:4px;margin-bottom:12px}.chart-bar{width:12px;border-radius:6px 6px 0 0;transition:all .3s ease;min-height:10px}.chart-bar.users{background:linear-gradient(to top,#48bb78,#38a169)}.chart-bar.sessions{background:linear-gradient(to top,#3182ce,#2c5aa0)}.chart-bar.checks{background:linear-gradient(to top,#ed8936,#dd6b20)}.chart-bar:hover{transform:scale(1.1);filter:brightness(1.1)}.chart-label{font-size:12px;color:#718096;font-weight:500}.usage-stats{display:flex;flex-direction:column;gap:16px}.usage-item{display:flex;align-items:center;gap:16px;padding:16px;background:#f7fafc;border-radius:12px;transition:all .3s ease}.usage-item:hover{background:#edf2f7;transform:translate(4px)}.usage-info{flex:1;min-width:0}.usage-name{display:block;font-weight:600;color:#1a202c;margin-bottom:4px}.usage-count{font-size:12px;color:#718096}.usage-bar{flex:2;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(90deg,#667eea,#764ba2);border-radius:4px;transition:width .3s ease}.usage-percentage{font-size:14px;font-weight:600;color:#4a5568;min-width:40px;text-align:right}.engagement-section{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.engagement-card,.trends-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.engagement-card h3,.trends-card h3{margin:0 0 20px;color:#1a202c;font-size:18px;font-weight:700}.users-overview{gap:24px}.users-table-section{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.users-table-section h3{margin:0 0 20px;color:#1a202c;font-size:18px;font-weight:700;display:flex;align-items:center;gap:8px}.users-table-container{border-radius:12px;overflow:hidden;border:1px solid #e2e8f0;overflow-x:auto}.users-table{width:100%;border-collapse:collapse;background:white;min-width:800px}.users-table th,.users-table td{padding:16px 12px;text-align:left;border-bottom:1px solid #f1f5f9;vertical-align:middle}.users-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:14px;position:sticky;top:0;z-index:10}.users-table tr:hover{background:#f8fafc;transition:background-color .2s ease}.users-table tr:last-child td{border-bottom:none}.users-table td:first-child{font-weight:600;color:#1e293b}.role-select{padding:6px 12px;border:1px solid #e2e8f0;border-radius:6px;background:white;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;min-width:120px}.role-select:hover{border-color:#cbd5e0;background:#f7fafc}.role-select:focus{outline:none;border-color:#3182ce;box-shadow:0 0 0 3px #3182ce1a}.status-toggle{padding:6px 16px;border:none;border-radius:20px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s ease;min-width:100px}.status-toggle.active{background:#dcfce7;color:#166534}.status-toggle.inactive{background:#fef2f2;color:#991b1b}.status-toggle:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.user-actions-cell{display:flex;gap:8px;justify-content:center}.edit-btn,.delete-btn{width:32px;height:32px;border:none;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s ease}.edit-btn{background:#e0f2fe;color:#0369a1}.edit-btn:hover{background:#0ea5e9;color:#fff;transform:translateY(-1px)}.delete-btn{background:#fef2f2;color:#dc2626}.delete-btn:hover{background:#ef4444;color:#fff;transform:translateY(-1px)}.engagement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:20px}.engagement-item{text-align:center}.engagement-circle{width:80px;height:80px;margin:0 auto 12px;position:relative}.circle-progress{width:100%;height:100%;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative}.circle-inner{width:60px;height:60px;background:white;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px #0000001a}.circle-percentage{font-size:14px;font-weight:700;color:#1a202c}.engagement-info h4{margin:0 0 4px;font-size:12px;font-weight:600;color:#4a5568}.engagement-info p{margin:0;font-size:14px;font-weight:700;color:#1a202c}.trends-list{display:flex;flex-direction:column;gap:16px}.trend-item{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#f7fafc;border-radius:12px;transition:all .3s ease}.trend-item:hover{background:#edf2f7;transform:translateY(-2px)}.trend-info{flex:1}.trend-category{display:block;font-weight:600;color:#1a202c;margin-bottom:4px}.trend-users{font-size:12px;color:#718096}.trend-indicator{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:12px;font-size:12px;font-weight:600}.trend-indicator.improving{background:#c6f6d5;color:#22543d}.trend-indicator.stable{background:#e6fffa;color:#234e52}.trend-indicator.declining{background:#fed7d7;color:#742a2a}.analytics-card{background:white;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0}.analytics-card h3{margin:0 0 20px;color:#1a202c;font-size:18px;font-weight:700}.table-container{border-radius:12px;overflow:hidden;border:1px solid #e2e8f0}.admin-table{width:100%;border-collapse:collapse;background:white}.admin-table th,.admin-table td{padding:16px;text-align:left;border-bottom:1px solid #e2e8f0}.admin-table th{background:#f7fafc;font-weight:600;color:#4a5568;font-size:14px}.admin-table tr:hover{background:#f7fafc}.admin-table tr:last-child td{border-bottom:none}.status{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.status.active{background:#c6f6d5;color:#22543d}.status.inactive{background:#fed7d7;color:#742a2a}.status.admin{background:#e6fffa;color:#234e52}.session-count{display:inline-block;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.dashboard-card{background:white;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f;border:1px solid #e2e8f0;transition:all .2s ease;height:fit-content}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0000001f}.dashboard-card h3{margin:0 0 16px;color:#1a202c;font-size:16px;font-weight:700;display:flex;align-items:center;gap:8px}.dashboard-card .card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.dashboard-card .card-header h3{margin:0}.dashboard-card .loading-indicator{font-size:12px;color:#718096}.system-metrics{display:flex;flex-direction:column;gap:12px}.system-metrics .metric{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #f1f5f9}.system-metrics .metric:last-child{border-bottom:none}.system-metrics .metric-label{font-size:12px;color:#64748b;font-weight:500}.system-metrics .metric-value{font-size:14px;font-weight:600;color:#1e293b}.system-metrics .metric-value.status-green{color:#16a34a}.system-metrics .metric-value.status-orange{color:#ea580c}.system-metrics .metric-value.status-red{color:#dc2626}.system-metrics .metric-value.status-gray{color:#64748b}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-container{background:white;border-radius:16px;box-shadow:0 20px 50px #0003;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;animation:modalSlideIn .3s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{padding:24px 24px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e2e8f0;margin-bottom:24px}.modal-header h3{margin:0;color:#1a202c;font-size:20px;font-weight:700}.modal-close{width:32px;height:32px;border:none;background:#f1f5f9;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;color:#64748b;transition:all .2s ease}.modal-close:hover{background:#e2e8f0;color:#475569}.modal-body{padding:0 24px 24px}.modal-footer{padding:24px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end}.delete-modal .modal-header{border-bottom:1px solid #fecaca;background:linear-gradient(135deg,#fef2f2 0%,#ffffff 100%);border-radius:16px 16px 0 0}.modal-title{display:flex;align-items:center;gap:12px}.modal-icon.error{font-size:24px;background:#fef2f2;border-radius:8px;padding:8px}.modal-title-text{font-size:20px;font-weight:700;color:#dc2626}.delete-confirmation{text-align:center}.delete-message{margin:0 0 20px;color:#374151;font-size:16px}.user-info-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin:20px 0;display:flex;align-items:center;gap:16px}.user-avatar{width:48px;height:48px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:20px;font-weight:700}.user-details{flex:1;text-align:left}.user-details h4{margin:0 0 4px;color:#1f2937;font-size:16px;font-weight:600}.user-details p{margin:0 0 8px;color:#6b7280;font-size:14px}.role-badge{padding:4px 12px;border-radius:12px;font-size:12px;font-weight:600}.role-badge.admin{background:#fef2f2;color:#991b1b}.role-badge.moderator{background:#f0f9ff;color:#1e40af}.role-badge.user{background:#f7fee7;color:#365314}.warning-note{background:#fffbeb;border:1px solid #fed7aa;border-radius:8px;padding:16px;margin-top:20px}.warning-note p{margin:0 0 8px;color:#92400e;font-size:14px}.warning-note p:last-child{margin-bottom:0}.danger-button{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;transition:all .3s ease}.danger-button:hover{background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.users-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.stat-card{background:white;border-radius:16px;padding:20px;box-shadow:0 4px 20px #00000014;border:1px solid #e2e8f0;display:flex;align-items:center;gap:16px;transition:all .3s ease}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 32px #0000001f}.stat-card.blue{border-left:4px solid #3182ce}.stat-card.green{border-left:4px solid #48bb78}.stat-card.purple{border-left:4px solid #805ad5}.stat-icon{font-size:32px;background:linear-gradient(135deg,#f7fafc 0%,#edf2f7 100%);border-radius:12px;padding:12px;display:flex;align-items:center;justify-content:center;width:56px;height:56px}.stat-content{flex:1}.stat-content h3{margin:0 0 8px;font-size:14px;font-weight:600;color:#718096}.stat-number{font-size:24px;font-weight:800;color:#1a202c;margin-bottom:4px}.stat-max{font-size:16px;color:#718096;font-weight:500}.stat-percentage{font-size:12px;color:#4a5568}@media (max-width: 768px){.users-table-container{overflow-x:auto}.users-table th,.users-table td{padding:12px 8px;font-size:14px}.modal-container{width:95%;margin:20px}.modal-header,.modal-body,.modal-footer{padding:16px}.users-stats{grid-template-columns:1fr}}.plan-section{margin-top:2rem}.plan-section h3{display:flex;align-items:center;gap:.5rem;color:#1a202c;font-size:1.5rem;font-weight:700;margin-bottom:1.5rem}.plan-section-icon{color:#667eea}.current-plan{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:20px;padding:2rem;margin-bottom:2rem;color:#fff;position:relative;overflow:hidden}.current-plan:before{content:"";position:absolute;top:0;right:0;width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);transform:translate(50%,-50%)}.plan-header{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;position:relative;z-index:2}.plan-icon{width:3rem;height:3rem;background:rgba(255,255,255,.2);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.plan-info h4{font-size:1.5rem;font-weight:700;margin:0 0 .25rem;color:#fff}.plan-tier{font-size:.875rem;opacity:.9;font-weight:500;color:#ffffffe6}.plan-badge{background:rgba(255,255,255,.9);color:#667eea;padding:.5rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;margin-left:auto}.plan-user-limit{margin-bottom:1.5rem;position:relative;z-index:2}.user-limit-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.user-limit-label{font-size:.875rem;opacity:.9}.user-limit-value{font-weight:600;font-size:1rem}.user-limit-progress{display:flex;align-items:center;gap:1rem}.user-limit-bar{flex:1;height:8px;background:rgba(255,255,255,.2);border-radius:4px;overflow:hidden}.user-limit-fill{height:100%;background:rgba(255,255,255,.9);border-radius:4px;transition:width .3s ease}.user-limit-text{font-size:.875rem;opacity:.9;white-space:nowrap}.plan-features{margin-bottom:1.5rem;position:relative;z-index:2}.feature-item{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem;font-size:.875rem;color:#000}.feature-icon{color:#ffffffe6}.plan-usage{margin-bottom:1.5rem;position:relative;z-index:2}.usage-item{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;padding:.75rem;background:rgba(255,255,255,.1);border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.usage-label{flex:0 0 140px;font-size:.875rem;opacity:.9}.usage-value{flex:1;display:flex;align-items:center;gap:1rem;font-weight:600}.usage-bar{flex:1;height:6px;background:rgba(255,255,255,.2);border-radius:3px;overflow:hidden}.usage-fill{height:100%;background:rgba(255,255,255,.8);border-radius:3px;transition:width .3s ease}.plan-actions{display:flex;gap:1rem;position:relative;z-index:2}.upgrade-plan-btn{background:rgba(255,255,255,.9);color:#667eea;border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.upgrade-plan-btn:hover{background:white;transform:translateY(-2px);box-shadow:0 8px 25px #00000026}.manage-plan-btn{background:transparent;color:#fff;border:2px solid rgba(255,255,255,.3);padding:.75rem 1.5rem;border-radius:12px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease}.manage-plan-btn:hover{background:rgba(255,255,255,.1);border-color:#ffffff80}.other-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-bottom:2rem}.plan-card{background:white;border-radius:16px;padding:1.5rem;border:2px solid #e2e8f0;transition:all .3s ease;position:relative;overflow:hidden;display:flex;flex-direction:column;height:100%;color:#1a202c}.plan-card.popular{border-color:#667eea;box-shadow:0 8px 32px #667eea26;transform:scale(1.02)}.plan-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000001a}.recommended-badge{position:absolute;top:-1px;right:1rem;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:.5rem 1rem;border-radius:0 0 12px 12px;font-size:.75rem;font-weight:600}.plan-card-header{margin-bottom:1.5rem}.plan-card-name{font-size:1.25rem;font-weight:700;color:#1a202c;margin:0 0 .5rem}.plan-card-price{display:flex;align-items:baseline;gap:.25rem;margin-bottom:.5rem;justify-content:center}.currency{font-size:1rem;color:#4a5568;font-weight:500}.plan-card-price{font-size:2rem;font-weight:700;color:#667eea}.period{font-size:.875rem;color:#4a5568;font-weight:500}.user-count-unlimited{font-size:1.5rem;font-weight:700;color:#667eea}.plan-card-subtitle{font-size:.875rem;color:#4a5568;font-weight:500}.plan-user-count{margin-bottom:1.5rem;padding:1rem;background:#f8fafc;border-radius:12px}.user-count-label{font-size:.75rem;color:#4a5568;font-weight:500;margin-bottom:.25rem}.user-count-value{font-size:1rem;font-weight:600;color:#1a202c}.plan-card-features{list-style:none;padding:0;margin:0 0 1.5rem}.plan-card-features li{display:flex;align-items:center;gap:.75rem;padding:.5rem 0;font-size:.875rem;color:#4a5568}.check-icon{color:#48bb78;font-weight:600}.plan-card-button{width:100%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;margin-top:auto}.enterprise-contact{background:#f8fafc;border-radius:12px;padding:1.5rem;text-align:center}.enterprise-contact-title{display:flex;align-items:center;justify-content:center;gap:.5rem;font-size:1rem;font-weight:600;color:#1a202c;margin-bottom:.75rem}.enterprise-contact-desc{font-size:.875rem;color:#4a5568;line-height:1.5;margin-bottom:1rem}.enterprise-contact-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:12px;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}@media (max-width: 768px){.other-plans{grid-template-columns:1fr}.plan-actions{flex-direction:column}.usage-item{flex-direction:column;align-items:flex-start;gap:.5rem}.usage-label{flex:none}.usage-value{width:100%}}.stats-overview{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:24px;margin-bottom:32px}.stat-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);border-radius:16px;padding:24px;display:flex;align-items:center;gap:16px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 20px #00000014}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.stat-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #667eea33;border-color:#667eea4d}.stat-icon{width:48px;height:48px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;box-shadow:0 4px 12px #667eea4d}.stat-info{flex:1}.stat-info h3{font-size:2rem;font-weight:700;color:#2d3748;margin:0 0 4px;line-height:1.2}.stat-info p{color:#718096;font-size:.9rem;font-weight:500;margin:0}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px;margin-top:32px}.dashboard-card{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1)}.dashboard-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.dashboard-card h3{color:#2d3748;font-size:1.2rem;font-weight:600;margin:0 0 16px;display:flex;align-items:center;gap:8px}.dashboard-card-icon{display:flex;align-items:center;color:#667eea}.recent-activity-list{list-style:none;padding:0;margin:0}.activity-item{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid rgba(226,232,240,.5);transition:all .3s ease}.activity-item:last-child{border-bottom:none}.activity-item:hover{background:rgba(102,126,234,.02);border-radius:8px;margin:0 -8px;padding:12px 8px}.activity-icon{width:32px;height:32px;background:rgba(102,126,234,.1);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#667eea;flex-shrink:0}.activity-info{flex:1}.activity-title{font-weight:600;color:#2d3748;font-size:.9rem;margin:0 0 2px}.activity-time{color:#718096;font-size:.8rem;margin:0}.system-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.status-item{background:rgba(255,255,255,.5);border-radius:12px;padding:16px;text-align:center;transition:all .3s ease}.status-item:hover{background:rgba(102,126,234,.05);transform:translateY(-2px)}.status-label{color:#4a5568;font-size:.9rem;font-weight:500;margin-bottom:8px}.status-value{font-size:1.1rem;font-weight:600;color:#2d3748}.status-value.healthy{color:#38a169}.status-value.warning{color:#f6ad55}.status-value.error{color:#e53e3e}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}.quick-action-btn{background:rgba(255,255,255,.5);border:2px solid rgba(226,232,240,.8);border-radius:12px;padding:16px;cursor:pointer;transition:all .3s ease;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.quick-action-btn:hover{background:rgba(102,126,234,.05);border-color:#667eea4d;transform:translateY(-2px);box-shadow:0 4px 12px #667eea1a}.quick-action-icon{width:32px;height:32px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:8px;display:flex;align-items:center;justify-content:center;color:#fff}.quick-action-label{font-size:.8rem;font-weight:500;color:#4a5568;margin:0}.alerts-list{list-style:none;padding:0;margin:0}.alert-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:12px;margin-bottom:12px;transition:all .3s ease}.alert-item:last-child{margin-bottom:0}.alert-item.info{background:rgba(66,153,225,.1);border:1px solid rgba(66,153,225,.2)}.alert-item.warning{background:rgba(246,173,85,.1);border:1px solid rgba(246,173,85,.2)}.alert-item.error{background:rgba(229,62,62,.1);border:1px solid rgba(229,62,62,.2)}.alert-icon{flex-shrink:0}.alert-icon.info{color:#4299e1}.alert-icon.warning{color:#f6ad55}.alert-icon.error{color:#e53e3e}.alert-content{flex:1}.alert-title{font-weight:600;color:#2d3748;font-size:.9rem;margin:0 0 2px}.alert-message{color:#4a5568;font-size:.8rem;margin:0;line-height:1.4}.loading-message,.error-message,.warning-message{text-align:center;padding:32px;border-radius:12px;margin:20px 0}.loading-message{background:rgba(102,126,234,.05);color:#667eea;border:1px solid rgba(102,126,234,.2)}.error-message{background:rgba(229,62,62,.05);color:#e53e3e;border:1px solid rgba(229,62,62,.2)}.warning-message{background:rgba(246,173,85,.05);color:#ed8936;border:1px solid rgba(246,173,85,.2);display:flex;align-items:center;justify-content:center;gap:8px;text-align:left}.retry-button{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 24px;border-radius:8px;font-weight:600;cursor:pointer;margin-top:16px;transition:all .3s ease}.retry-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}@media (max-width: 1024px){.stats-overview{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}}@media (max-width: 768px){.stats-overview,.dashboard-grid{grid-template-columns:1fr;gap:16px}.stat-card,.dashboard-card{padding:20px}.quick-actions-grid,.system-status-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.stat-card{padding:16px;flex-direction:column;text-align:center;gap:12px}.dashboard-card{padding:16px}.stat-info h3{font-size:1.5rem}.quick-actions-grid,.system-status-grid{grid-template-columns:1fr}}.settings-group.plan-section{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1)}.settings-group.plan-section:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.settings-group.plan-section h3{color:#2d3748;margin-bottom:20px;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:8px}.plan-section-icon{display:flex;align-items:center;color:#f6ad55}.current-plan{background:linear-gradient(135deg,rgba(255,182,193,.1) 0%,rgba(255,218,185,.1) 100%);border:2px solid rgba(255,182,193,.3);border-radius:20px;padding:28px;margin-bottom:32px;position:relative;overflow:hidden;box-shadow:0 6px 30px #ffb6c126}.current-plan:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.plan-header{display:flex;align-items:center;margin-bottom:20px}.plan-icon{width:48px;height:48px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;margin-right:16px;box-shadow:0 4px 12px #667eea4d}.plan-info{flex:1}.plan-name{font-size:1.5rem;font-weight:700;color:#2d3748;margin:0 0 4px}.plan-tier{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:4px 12px;border-radius:20px;font-size:.8rem;font-weight:600;display:inline-block}.plan-badge{background:rgba(56,161,105,.1);color:#38a169;padding:8px 16px;border-radius:20px;font-size:.9rem;font-weight:600;border:1px solid rgba(56,161,105,.3)}.plan-user-limit{background:rgba(255,255,255,.5);border-radius:12px;padding:16px;margin-bottom:20px}.user-limit-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.user-limit-label{color:#4a5568;font-weight:500}.user-limit-value{font-weight:600;color:#2d3748}.user-limit-progress{display:flex;align-items:center;gap:12px}.user-limit-bar{flex:1;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.user-limit-fill{height:100%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:4px;transition:width .3s ease}.user-limit-text{font-size:.9rem;color:#4a5568;font-weight:500;white-space:nowrap}.plan-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:12px;margin-bottom:20px}.feature-item{display:flex;align-items:center;gap:8px;color:#4a5568;font-size:.9rem}.feature-icon{color:#38a169;flex-shrink:0}.plan-usage{background:rgba(255,255,255,.5);border-radius:12px;padding:16px;margin-bottom:20px}.usage-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.usage-item:last-child{margin-bottom:0}.usage-label{color:#4a5568;font-weight:500;font-size:.9rem}.usage-value{display:flex;align-items:center;gap:8px;font-weight:600;color:#2d3748;font-size:.9rem}.usage-bar{width:60px;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden}.usage-fill{height:100%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-radius:3px;transition:width .3s ease}.plan-actions{display:flex;gap:12px}.upgrade-plan-btn{flex:1;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 20px;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .3s ease}.upgrade-plan-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.manage-plan-btn{background:rgba(255,255,255,.8);color:#4a5568;border:2px solid #e2e8f0;padding:12px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.manage-plan-btn:hover{background:rgba(102,126,234,.05);border-color:#667eea4d;color:#667eea;transform:translateY(-1px)}.other-plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px;margin-bottom:32px}.plan-card{background:rgba(255,255,255,.8);border:2px solid rgba(226,232,240,.8);border-radius:16px;padding:24px;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);overflow:hidden}.plan-card:hover{transform:translateY(-4px);box-shadow:0 12px 30px #667eea26;border-color:#667eea4d}.plan-card.popular{border-color:#f6ad55;background:linear-gradient(135deg,rgba(246,173,85,.05) 0%,rgba(237,137,54,.05) 100%)}.recommended-badge{position:absolute;top:-1px;right:20px;background:linear-gradient(135deg,#f6ad55 0%,#ed8936 100%);color:#fff;padding:8px 16px;border-radius:0 0 12px 12px;font-size:.8rem;font-weight:600;box-shadow:0 4px 12px #f6ad554d}.plan-card-header{text-align:center;margin-bottom:20px}.plan-card-name{font-size:1.4rem;font-weight:700;color:#2d3748;margin:0 0 8px}.plan-card-price{font-size:2rem;font-weight:800;color:#667eea;margin-bottom:4px}.currency{font-size:1.2rem;vertical-align:top}.period{font-size:1rem;color:#4a5568;font-weight:500}.plan-card-subtitle{color:#718096;font-size:.9rem}.user-count-unlimited{color:#f6ad55;font-weight:600}.plan-user-count{background:rgba(102,126,234,.05);border-radius:12px;padding:16px;margin-bottom:20px;text-align:center}.user-count-label{color:#4a5568;font-size:.9rem;margin-bottom:4px}.user-count-value{font-weight:600;color:#2d3748}.plan-card-features{list-style:none;padding:0;margin:0 0 24px}.plan-card-features li{display:flex;align-items:center;gap:8px;color:#4a5568;font-size:.9rem;margin-bottom:8px}.check-icon{color:#38a169;flex-shrink:0}.enterprise-contact{background:linear-gradient(135deg,rgba(102,126,234,.05) 0%,rgba(118,75,162,.05) 100%);border:1px solid rgba(102,126,234,.2);border-radius:12px;padding:20px;text-align:center}.enterprise-contact-title{display:flex;align-items:center;justify-content:center;gap:8px;color:#667eea;font-weight:600;margin-bottom:12px}.enterprise-contact-desc{color:#4a5568;font-size:.9rem;line-height:1.5;margin-bottom:16px}.enterprise-contact-btn{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 24px;border-radius:12px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .3s ease}.enterprise-contact-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.plan-card-button{width:100%;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;padding:12px 20px;border-radius:12px;font-weight:600;cursor:pointer;transition:all .3s ease}.plan-card-button:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.billing-section{margin-bottom:32px}.billing-section h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px}.billing-table-container{background:rgba(255,255,255,.8);border-radius:12px;overflow:hidden;border:1px solid rgba(226,232,240,.8)}.billing-table{width:100%;border-collapse:collapse}.billing-table th{background:rgba(102,126,234,.1);color:#4a5568;font-weight:600;padding:16px;text-align:left;font-size:.9rem}.billing-table td{padding:16px;border-bottom:1px solid rgba(226,232,240,.5);color:#4a5568;font-size:.9rem}.billing-table tr:last-child td{border-bottom:none}.billing-table .amount{font-weight:600;color:#2d3748}.status-badge.success{background:rgba(56,161,105,.1);color:#38a169;padding:4px 12px;border-radius:12px;font-size:.8rem;font-weight:600}.download-btn{background:rgba(102,126,234,.1);color:#667eea;border:1px solid rgba(102,126,234,.3);padding:8px 12px;border-radius:8px;font-size:.8rem;cursor:pointer;display:inline-flex;align-items:center;gap:4px;transition:all .3s ease}.download-btn:hover{background:rgba(102,126,234,.2);transform:translateY(-1px)}.payment-method{margin-bottom:24px}.payment-method h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px}.payment-method-content{background:rgba(255,255,255,.8);border:1px solid rgba(226,232,240,.8);border-radius:12px;padding:20px}.payment-method-item{display:flex;align-items:center;gap:16px}.payment-method-icon{width:48px;height:48px;background:rgba(102,126,234,.1);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#667eea}.payment-method-info{flex:1}.payment-method-name{font-weight:600;color:#2d3748;margin-bottom:4px}.payment-method-detail{color:#4a5568;font-size:.9rem;font-family:Monaco,Menlo,monospace;margin-bottom:2px}.payment-method-expiry{color:#718096;font-size:.8rem}.payment-method-actions{display:flex;gap:8px}.edit-payment-btn{background:rgba(102,126,234,.1);color:#667eea;border:1px solid rgba(102,126,234,.3);padding:8px 16px;border-radius:8px;font-size:.9rem;cursor:pointer;transition:all .3s ease}.edit-payment-btn:hover{background:rgba(102,126,234,.2);transform:translateY(-1px)}@media (max-width: 1024px){.other-plans{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}}@media (max-width: 768px){.settings-group.plan-section,.current-plan{padding:20px}.plan-header{flex-direction:column;align-items:flex-start;gap:12px}.plan-actions{flex-direction:column}.other-plans,.plan-features{grid-template-columns:1fr}.payment-method-item{flex-direction:column;align-items:flex-start;gap:12px}.billing-table-container{overflow-x:auto}}@media (max-width: 480px){.settings-group.plan-section,.current-plan,.plan-card{padding:16px}.billing-table th,.billing-table td{padding:12px 8px;font-size:.8rem}.plan-card-price{font-size:1.5rem}}.settings-group.system-info{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1)}.settings-group.system-info:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.settings-group.system-info h3{color:#2d3748;margin-bottom:20px;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:8px}.system-info-icon{display:flex;align-items:center;color:#667eea}.system-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:16px}.system-info-item{background:rgba(102,126,234,.05);border:1px solid rgba(102,126,234,.1);border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;text-align:center;transition:all .3s ease}.system-info-item:hover{background:rgba(102,126,234,.08);border-color:#667eea33;transform:translateY(-2px)}.info-label{font-size:.9rem;color:#718096;font-weight:500;margin-bottom:8px}.info-value{font-size:1.1rem;font-weight:600;color:#2d3748}.info-value.status-indicator{color:#38a169;display:flex;align-items:center;gap:4px}.info-value.status-indicator:before{content:"●";color:#38a169;font-size:.8rem}@media (max-width: 768px){.system-info-grid{grid-template-columns:1fr;gap:12px}.system-info-item{padding:12px}.settings-group.system-info{padding:20px;margin-bottom:20px}}@media (max-width: 480px){.settings-group.system-info h3{font-size:1.1rem}.settings-group.system-info{padding:16px}}.settings-group.security-settings{background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 4px 20px #00000014;border:1px solid rgba(255,255,255,.2);transition:all .3s cubic-bezier(.4,0,.2,1)}.settings-group.security-settings:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea26}.settings-group.security-settings h3{color:#2d3748;margin-bottom:20px;font-size:1.3rem;font-weight:600;display:flex;align-items:center;gap:8px}.security-icon{display:flex;align-items:center;color:#e53e3e}.settings-list{margin-bottom:32px}.setting-item{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border:1px solid rgba(226,232,240,.8);border-radius:12px;margin-bottom:16px;background:rgba(255,255,255,.5);transition:all .3s ease}.setting-item:hover{border-color:#667eea4d;background:rgba(102,126,234,.02);transform:translateY(-1px)}.setting-info{flex:1;margin-right:20px}.setting-label{display:block;font-weight:600;color:#2d3748;margin-bottom:4px;font-size:1rem}.setting-description{color:#718096;font-size:.9rem;line-height:1.4}.setting-control{flex-shrink:0}.toggle{position:relative;display:inline-block;width:52px;height:28px;cursor:pointer}.toggle input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:#cbd5e0;transition:.3s;border-radius:28px;box-shadow:inset 0 2px 4px #0000001a}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:4px;bottom:4px;background:white;transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle input:checked+.toggle-slider{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.toggle input:checked+.toggle-slider:before{transform:translate(24px)}.toggle input:focus+.toggle-slider{box-shadow:0 0 0 3px #667eea4d}.number-input{width:80px;padding:8px 12px;border:2px solid #e2e8f0;border-radius:8px;font-size:.9rem;text-align:center;transition:all .3s ease}.number-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.ip-whitelist-section{border-top:1px solid rgba(226,232,240,.8);padding-top:24px}.ip-whitelist-section h4{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:16px;display:flex;align-items:center;gap:8px}.ip-add-form{display:flex;gap:12px;margin-bottom:24px;flex-wrap:wrap}.ip-input,.description-input{flex:1;min-width:150px;padding:12px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:.9rem;transition:all .3s ease}.ip-input:focus,.description-input:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.add-ip-btn{padding:12px 20px;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;border-radius:12px;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;transition:all .3s ease;white-space:nowrap}.add-ip-btn:hover{transform:translateY(-2px);box-shadow:0 8px 25px #667eea4d}.ip-list{margin-bottom:20px}.ip-item{display:flex;justify-content:space-between;align-items:center;padding:16px;border:1px solid rgba(226,232,240,.8);border-radius:12px;margin-bottom:12px;background:rgba(255,255,255,.5);transition:all .3s ease}.ip-item:hover{border-color:#667eea4d;background:rgba(102,126,234,.02)}.ip-info{flex:1}.ip-address{display:block;font-weight:600;color:#2d3748;font-family:Monaco,Menlo,monospace;margin-bottom:4px}.ip-description{color:#718096;font-size:.9rem}.ip-actions{display:flex;align-items:center;gap:12px}.delete-ip-btn{padding:8px;background:rgba(245,101,101,.1);color:#e53e3e;border:1px solid rgba(245,101,101,.3);border-radius:8px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.delete-ip-btn:hover{background:rgba(245,101,101,.2);border-color:#f5656580;transform:translateY(-1px)}.ip-help{background:rgba(102,126,234,.05);border:1px solid rgba(102,126,234,.1);border-radius:12px;padding:16px}.ip-help p{color:#667eea;font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:8px}.ip-help ul{list-style:none;padding:0;margin:0}.ip-help li{color:#4a5568;font-size:.9rem;margin-bottom:4px;padding-left:24px;position:relative}.ip-help li:before{content:"•";color:#667eea;position:absolute;left:12px}@media (max-width: 768px){.setting-item{flex-direction:column;align-items:stretch;gap:12px}.setting-info{margin-right:0}.setting-control{display:flex;justify-content:flex-end}.ip-add-form{flex-direction:column}.ip-item{flex-direction:column;align-items:stretch;gap:12px}.ip-actions{justify-content:flex-end}.settings-group.security-settings{padding:20px}}@media (max-width: 480px){.settings-group.security-settings{padding:16px}.settings-group.security-settings h3{font-size:1.1rem}.setting-item{padding:16px}.ip-item{padding:12px}}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
