:root{--bg:#0f1117;--card:#171a23;--border:#262b3a;--text:#e8eaf0;--text-dim:#8b93a7;--accent:#5b8cff;--accent-hover:#4570e8;--danger:#ff5b6e;--success:#4ade80;--warning:#fbbf24}*{box-sizing:border-box;margin:0;padding:0}*{-webkit-tap-highlight-color:transparent !important}body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;display:flex;flex-direction:column}.auth-container{flex:1;display:flex;align-items:center;justify-content:center;padding:20px}.page-footer{margin-top:auto;padding:16px 0;text-align:center;border-top:1px solid var(--border)}.page-footer p{color:var(--text-dim);font-size:13px;margin:0}.auth-box{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:40px 32px;width:100%;max-width:380px}.auth-logo{display:block;width:64px;height:64px;object-fit:contain;margin:0 auto 14px}.auth-box h1{font-size:24px;margin-bottom:6px;text-align:center}.subtitle{color:var(--text-dim);font-size:14px;text-align:center;margin-bottom:28px}.auth-link-underline{color:var(--text-dim);font-size:13px;text-decoration:none;transition:all 0.2s}.auth-link-underline:hover{text-decoration:underline;color:var(--text)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;color:var(--text-dim);margin-bottom:6px}.form-group input{width:100%;padding:12px 14px;background:#0f1117;border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:15px}.form-group input:focus{outline:none;border-color:var(--accent)}.phone-input-wrapper{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:10px;background:#0f1117;overflow:hidden}.phone-input-wrapper:focus-within{border-color:var(--accent)}.phone-prefix{display:flex;align-items:center;padding:0 10px 0 14px;color:var(--text-dim);font-size:15px;background:rgba(255,255,255,0.03);border-right:1px solid var(--border);user-select:none;flex-shrink:0}.phone-input-wrapper input{border:none;background:transparent;border-radius:0}.phone-input-wrapper input:focus{outline:none;border:none}.form-group textarea{width:100%;padding:12px 14px;background-color:#0f1117;border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:15px;font-family:inherit;resize:vertical}.form-group textarea::placeholder{color:var(--text-dim)}.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group select{width:100%;padding:12px 36px 12px 14px;background-color:#0f1117;border:1px solid var(--border);border-radius:10px;color:var(--text);font-size:15px;font-family:inherit;appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%238b93a7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:18px}.form-group select:focus{outline:none;border-color:var(--accent)}.form-group select option{background:var(--card);color:var(--text)}.password-wrapper{position:relative;display:flex;align-items:center}.password-wrapper input{padding-right:44px}.toggle-password{position:absolute;right:6px;top:50%;transform:translateY(-50%);width:auto;background:none;border:none;padding:6px;margin:0;cursor:pointer;line-height:1;color:var(--text-dim);display:flex;align-items:center;justify-content:center;border-radius:8px}.toggle-password:hover{background:rgba(255,255,255,0.06);color:var(--text)}button{width:100%;padding:12px;background:var(--accent);color:white;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;margin-top:8px}button:hover{background:var(--accent-hover)}button:disabled{opacity:0.6;cursor:not-allowed}button.secondary{background:transparent;border:1px solid var(--border);color:var(--text)}button.danger{background:var(--danger)}.btn-skip{margin-top:10px;background:transparent;border:1px solid var(--border);color:var(--text-dim)}.btn-skip:hover{background:rgba(255,255,255,0.06);border-color:var(--text-dim);color:var(--text)}.btn-skip:active{background:rgba(255,255,255,0.1)}.error-msg{color:var(--danger);font-size:13px;margin-top:10px;text-align:center;min-height:18px}.success-msg{color:var(--success);font-size:13px;margin-top:10px;text-align:center;min-height:18px}.topbar{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--card)}.topbar h2{font-size:18px}.topbar-title-block{display:flex;flex-direction:column}.topbar-title-block--brand{flex-direction:row;align-items:center;gap:10px}.brand-logo{width:34px;height:34px;object-fit:contain;border-radius:6px;flex-shrink:0}.credit-line{font-size:11px;color:var(--text-dim);display:flex;align-items:center;gap:6px;margin-top:2px}.credit-line .claude-credit::before{content:"• ";margin-right:2px}.topbar .user-info{display:flex;align-items:center;gap:14px;font-size:14px;color:var(--text-dim)}.header-user-actions{display:inline-flex;align-items:center;gap:8px;min-width:0}.header-user-actions>span{display:inline-block;font-size:12px;font-weight:600;color:var(--accent);background:rgba(91,140,255,0.12);padding:5px 14px;border-radius:20px;letter-spacing:0.2px;white-space:nowrap}.header-user-actions>span::before{content:"👋 "}.name-short{display:none}.name-full{display:inline}.topbar button{width:auto;padding:8px 16px;font-size:13px;margin:0}.topbar .user-info .btn-row{display:flex;gap:8px}#notificationBellWrap{display:inline-flex;flex-shrink:0}.container{max-width:900px;margin:0 auto;padding:24px}.storage-card{background:var(--card);border:1px solid var(--border);border-radius:14px;padding:20px;margin-bottom:24px}.storage-bar-track{width:100%;height:10px;background:#0f1117;border-radius:6px;overflow:hidden;margin-top:10px}.storage-bar-fill{height:100%;background:var(--accent);transition:width 0.3s}.storage-bar-fill.warning{background:var(--warning)}.storage-bar-fill.full{background:var(--danger)}.storage-text{display:flex;justify-content:space-between;font-size:13px;color:var(--text-dim);margin-top:8px}.upload-zone{border:2px dashed var(--border);border-radius:14px;padding:32px;text-align:center;cursor:pointer;margin-bottom:24px;transition:border-color 0.2s,background 0.2s}.upload-zone:hover,.upload-zone.dragover,.upload-zone.uploading{border-color:var(--accent);background:rgba(91,140,255,0.05)}.upload-zone input{display:none}.upload-zone .icon{font-size:32px;margin-bottom:10px}.upload-zone .hint{color:var(--text-dim);font-size:13px;margin-top:6px}.upload-zone .upload-progress{margin-top:16px}.upload-progress-text{font-size:13px;font-weight:600;color:var(--text-dim);margin-top:6px}.upload-progress-text.is-complete{color:#22c55e}.progress-track{width:100%;height:8px;background:#0f1117;border-radius:6px;overflow:hidden;margin-top:12px;display:none}.progress-fill{height:100%;background:var(--accent);width:0%;transition:width 0.2s ease-out,background 0.2s ease-out}.progress-fill.is-complete{background:#22c55e}.bulk-bar{display:none;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 16px;margin-bottom:14px}.bulk-bar.show{display:flex}.bulk-bar .bulk-select-all{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-dim);cursor:pointer;user-select:none}.bulk-bar .bulk-select-all input[type="checkbox"],.file-select input[type="checkbox"]{appearance:none;-webkit-appearance:none;width:18px;height:18px;border:1.5px solid var(--border);border-radius:4px;background:var(--bg);position:relative;margin:0;cursor:pointer;flex-shrink:0}.bulk-bar .bulk-select-all input[type="checkbox"]:hover,.file-select input[type="checkbox"]:hover{border-color:var(--accent)}.bulk-bar .bulk-select-all input[type="checkbox"]:checked,.file-select input[type="checkbox"]:checked{background:var(--accent);border-color:var(--accent)}.bulk-bar .bulk-select-all input[type="checkbox"]:checked::after,.file-select input[type="checkbox"]:checked::after{content:"";position:absolute;left:5px;top:1px;width:5px;height:9px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}#selectAllCheckbox:indeterminate{background:var(--bg);border-color:var(--border)}.bulk-bar .bulk-count{font-weight:600;color:var(--text)}.bulk-bar .bulk-actions{display:flex;gap:8px}.bulk-bar .bulk-actions button{width:auto;padding:8px 14px;font-size:13px;margin:0}.move-mode-bar{border-color:var(--accent);background:rgba(91,140,255,0.08);padding:8px 12px;gap:8px}.move-mode-bar #moveModeLabel{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.move-mode-bar .bulk-actions{gap:6px}.move-mode-bar #moveModeConfirmBtn,.move-mode-bar #moveModeCancelBtn{width:auto;padding:6px 12px;font-size:13px;font-weight:500;border-radius:6px;margin:0;flex:0 0 auto}.file-card.move-source,.folder-card.move-source{border-color:var(--warning);background:rgba(251,191,36,0.08);opacity:0.85}.file-list{display:flex;flex-direction:column;gap:12px}.file-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.file-card.selected,.folder-card.selected{border-color:var(--text-dim);background:rgba(255,255,255,0.03)}.file-select{display:flex;align-items:center}.file-info{flex:1;min-width:180px;display:flex;align-items:center;gap:12px;flex-wrap:nowrap}.file-select{flex:0 0 auto}.file-open{flex:1 1 auto;min-width:0}.file-name{font-weight:600;font-size:14px;word-break:break-word}.file-meta{color:var(--text-dim);font-size:12px;margin-top:4px}.file-actions{display:flex;gap:8px;align-items:center}.file-actions button{width:auto;padding:8px 14px;font-size:13px;margin:0}.empty-state{text-align:center;color:var(--text-dim);padding:40px 20px}table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:14px;overflow:hidden}th,td{padding:12px 16px;text-align:left;font-size:14px;border-bottom:1px solid var(--border)}th{color:var(--text-dim);font-weight:600;font-size:12px;text-transform:uppercase}tr:last-child td{border-bottom:none}td button{width:auto;padding:6px 12px;font-size:12px;margin:0 4px 0 0;display:inline-block}.badge{display:inline-block;padding:3px 10px;border-radius:20px;font-size:11px;font-weight:600}.badge.ok{background:rgba(74,222,128,0.15);color:var(--success)}.badge.full{background:rgba(255,91,110,0.15);color:var(--danger)}.dl-box{text-align:center}.dl-box .file-icon{font-size:48px;margin-bottom:16px}.dl-box .file-name{font-size:18px;margin-bottom:6px}.dl-box .file-meta{margin-bottom:24px}@media(max-width:768px){.credit-line{flex-direction:column !important;align-items:flex-start !important;gap:2px !important}.credit-line .claude-credit::before{content:"" !important;margin:0 !important}.file-card{flex-direction:column;align-items:flex-start}.file-actions{width:100%;justify-content:flex-start}.file-info{width:100%}.topbar{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:8px 10px;padding:12px 14px}.topbar-title-block{display:flex;flex-direction:column;min-width:0;order:1}.topbar-title-block--brand{flex-direction:row}.brand-logo{width:28px;height:28px}.topbar h2{font-size:16px;white-space:nowrap}.topbar .user-info{display:contents}.header-user-actions{order:2;align-self:flex-start;margin-left:auto;max-width:78%;box-sizing:border-box}.header-user-actions>span{min-width:0;box-sizing:border-box;font-size:11.5px;padding:5px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:right}.name-full{display:none}.name-short{display:inline}#notificationBellWrap{flex-shrink:0}#notificationBellBtn{width:auto;padding:7px 9px}.topbar .user-info .btn-row{order:3;flex-basis:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.topbar .user-info .btn-row a{display:block;width:100%}.topbar button,.topbar .user-info button{width:100%;padding:9px 8px;margin:0;font-size:12.5px;border-radius:8px;white-space:normal;justify-content:center;text-align:center}.topbar .user-info a[href="change-password.html"] button::before{content:""}#logoutBtn::before{content:""}.container{padding:16px}.storage-card{padding:16px}.storage-text{font-size:12px}.upload-zone{padding:16px 10px}.upload-zone .icon{font-size:20px;margin-bottom:4px}.upload-zone div:not(.icon):not(.hint){font-size:12.5px}.upload-zone .zone-label{font-size:13px;margin-bottom:1px}.upload-zone .hint{font-size:11px;margin-top:3px}.bulk-bar{flex-direction:column;align-items:stretch;gap:10px}.bulk-bar:not(.move-mode-bar).bulk-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.bulk-bar:not(.move-mode-bar).bulk-actions button{flex:none;width:100%;min-width:0;box-sizing:border-box;padding:9px 8px;justify-content:center}.move-mode-bar .bulk-actions{min-width:0}.move-mode-bar #moveModeConfirmBtn,.move-mode-bar #moveModeCancelBtn{min-width:0;box-sizing:border-box}.file-card{padding:14px}.file-info{width:100%}.file-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.file-actions button{width:100%;padding:9px 10px;text-align:center}.file-actions button.danger{grid-column:1 / -1}table,thead,tbody,th,td,tr{display:block}thead{display:none}table{border:none;background:transparent}tbody tr{background:var(--card);border:1px solid var(--border);border-radius:12px;margin-bottom:12px;padding:12px 14px}td{border:none;padding:8px 0;font-size:14px;display:flex;justify-content:space-between;align-items:center;gap:10px}td::before{content:attr(data-label);color:var(--text-dim);font-size:11px;text-transform:uppercase;font-weight:600;flex-shrink:0}td:last-child{flex-direction:column;align-items:stretch;gap:8px;padding-top:10px}td:last-child::before{display:none}td button{width:100%;margin:0}.auth-box{padding:28px 20px}}.file-actions button,.bulk-actions button,.topbar button{display:inline-flex;align-items:center;gap:6px}.file-actions button svg,.bulk-actions button svg,.topbar button svg{flex-shrink:0}.link-btn{width:auto;display:inline;background:none;border:none;padding:0;margin:0;color:var(--accent);text-decoration:underline;font-size:inherit;font-weight:400;cursor:pointer}.breadcrumb-bar{display:flex;align-items:center;flex-wrap:wrap;gap:4px;font-size:13px;color:var(--text-dim);margin-bottom:14px}.breadcrumb-bar .crumb{background:none;border:none;width:auto;display:inline;padding:2px 4px;margin:0;color:var(--text-dim);cursor:pointer;font-size:13px;border-radius:6px}.breadcrumb-bar .crumb:hover{background:rgba(255,255,255,0.06);color:var(--text)}.breadcrumb-bar .crumb.current{color:var(--text);font-weight:600;cursor:default}.breadcrumb-bar .crumb.current:hover{background:none}.breadcrumb-bar .sep{color:var(--border)}.folder-card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.folder-card .folder-open{display:flex;align-items:center;gap:12px;flex:1;min-width:180px;background:none;border:none;width:auto;margin:0;padding:0;text-align:left;cursor:pointer}.folder-card .folder-open:hover .file-name{text-decoration:underline}@media(min-width:769px){.file-card .file-open{border-radius:8px;padding:4px 6px !important;margin:-4px -6px !important;transition:background 0.15s ease}.file-card .file-open:hover{background:rgba(255,255,255,0.06)}.file-card .file-open:hover .file-name{text-decoration:underline}}.folder-actions{display:flex;gap:8px;align-items:center}.folder-actions button{width:auto;padding:8px 14px;font-size:13px;margin:0}@media(max-width:768px){.folder-card{padding:14px}.folder-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;width:100%}.folder-actions button{width:100%;padding:9px 10px;text-align:center}.folder-actions button.danger{grid-column:1 / -1}}.upload-grid{display:flex;flex-wrap:wrap;gap:14px;margin-bottom:8px}.upload-grid .upload-zone{flex:1 1 240px;margin-bottom:0}.upload-zone .zone-label{font-weight:600;font-size:14px;margin-bottom:2px}@media(max-width:768px){.upload-grid{gap:8px}.upload-grid .upload-zone{flex:1 1 0;min-width:0}}.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center;z-index:200;padding:20px;opacity:1;transition:opacity 0.18s ease}.modal-overlay.show{display:flex}.modal-overlay.closing{opacity:0}.boot-overlay{position:fixed;inset:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:300}.boot-spinner{width:36px;height:36px;border-radius:50%;border:3px solid var(--border);border-top-color:var(--accent);animation:boot-spin 0.8s linear infinite}@keyframes boot-spin{to{transform:rotate(360deg)}}.modal-box{background:var(--card);border:1px solid var(--border);border-radius:16px;padding:28px;max-width:380px;width:100%;max-height:calc(100vh - 40px);overflow-y:auto}.modal-box.setup-box{max-width:480px}.security-question-row{display:flex;gap:8px;align-items:stretch;flex-wrap:wrap}.security-question-row select{flex:1 1 220px;min-width:0}.security-question-row #shuffleQuestionBtn{flex:0 0 auto;width:44px;padding:0;display:flex;align-items:center;justify-content:center}.modal-box h3{margin-bottom:6px;font-size:20px}.modal-box .subtitle{margin-bottom:22px;text-align:left}.modal-step{display:none}.modal-step.active{display:block}.modal-step-indicator{display:flex;gap:6px;margin-bottom:20px}.modal-step-indicator span{flex:1;height:4px;border-radius:2px;background:var(--border)}.modal-step-indicator span.done,.modal-step-indicator span.active{background:var(--accent)}.settings-box{max-width:640px;width:92vw;max-height:88vh;overflow-y:auto;position:relative;text-align:left}.settings-close{position:absolute;top:14px;right:16px;width:auto;background:none;border:none;color:var(--text-dim);font-size:26px;line-height:1;cursor:pointer;padding:4px 8px}.settings-close:hover{background:none;color:var(--text)}.settings-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 20px;border-bottom:1px solid var(--border);padding-bottom:16px}button.settings-tab{width:auto;flex:0 1 auto;background:var(--bg);border:1px solid var(--border);color:var(--text-dim);padding:8px 14px;border-radius:999px;font-size:13px;font-weight:500;cursor:pointer;transition:background 0.15s ease,border-color 0.15s ease,color 0.15s ease}button.settings-tab[data-tab="danger"]{color:var(--danger);border-color:rgba(255,91,110,0.35)}button.settings-tab[data-tab="danger"]:hover,button.settings-tab[data-tab="danger"].active{background:rgba(255,91,110,0.12);border-color:var(--danger);color:var(--danger)}button.settings-tab:hover{background:var(--card);border-color:var(--text-dim);color:var(--text)}button.settings-tab.active,button.settings-tab.active:hover{background:var(--accent);border-color:var(--accent);color:#fff}.settings-pane{display:none}@media(min-width:769px){.settings-pane.active{display:flex;flex-direction:column;min-height:300px}.settings-tab-chevron{display:none}}@media(max-width:768px){.settings-box{padding:20px 16px}.settings-box .settings-tabs{display:contents}.settings-box{display:flex;flex-direction:column;gap:10px}.settings-box button.settings-tab{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:12px 16px;border-radius:12px;font-size:15px;text-align:left;background:var(--card);border:1px solid var(--border);transition:border-radius 0.15s ease}.settings-box button.settings-tab.expanded{border-radius:12px 12px 0 0;border-bottom-color:transparent}.settings-box button.settings-tab.expanded,.settings-box button.settings-tab.expanded:hover{background:var(--card);border-color:var(--accent);color:var(--text)}.settings-tab-chevron{flex-shrink:0;margin-left:10px;display:inline-block;transition:transform 0.2s ease;color:var(--text-dim)}.settings-box button.settings-tab.expanded .settings-tab-chevron{transform:rotate(180deg);color:var(--accent)}.settings-tabs [data-tab="password"]{order:1}[data-pane="password"]{order:2}.settings-tabs [data-tab="phone"]{order:3}[data-pane="phone"]{order:4}.settings-tabs [data-tab="name"]{order:5}[data-pane="name"]{order:6}.settings-tabs [data-tab="reports"]{order:7}[data-pane="reports"]{order:8}.settings-tabs [data-tab="report"]{order:9}[data-pane="report"]{order:10}.settings-tabs [data-tab="guide"]{order:11}[data-pane="guide"]{order:12}.settings-tabs [data-tab="danger"]{order:13}[data-pane="danger"]{order:14}.settings-pane{display:none;height:auto;min-height:0;max-height:none;margin:-10px 0 0;padding:0 14px;background:var(--bg);border:1px solid var(--border);border-top:none;border-radius:0 0 12px 12px;overflow:hidden}.settings-pane.expanded{display:block;height:auto;min-height:0;max-height:none;padding:14px 14px 24px;overflow:visible;animation:settings-pane-expand 0.18s ease}.settings-pane.expanded form{margin-bottom:4px}#siteGuideContentSettings,#myReportsList{max-height:380px;overflow-y:auto;padding-right:4px}#siteGuideContentSettings::-webkit-scrollbar,#myReportsList::-webkit-scrollbar{width:6px}#siteGuideContentSettings::-webkit-scrollbar-track,#myReportsList::-webkit-scrollbar-track{background:transparent}#siteGuideContentSettings::-webkit-scrollbar-thumb,#myReportsList::-webkit-scrollbar-thumb{background:var(--border);border-radius:999px}#siteGuideContentSettings::-webkit-scrollbar-thumb:hover,#myReportsList::-webkit-scrollbar-thumb:hover{background:var(--text-dim)}#siteGuideContentSettings,#myReportsList{scrollbar-width:thin;scrollbar-color:var(--border)transparent}@keyframes settings-pane-expand{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.settings-pane.expanded{padding-bottom:28px !important;height:auto !important;min-height:fit-content;max-height:none !important;overflow:visible !important}#settingsPasswordBtn,#reportSubmitBtn{margin-bottom:8px !important}}.field-hint{margin-top:6px;font-size:12px;color:var(--text-dim)}.site-guide h4{margin:18px 0 4px;font-size:15px}.site-guide h4:first-child{margin-top:0}.site-guide p{margin:0 0 6px;font-size:13px;color:var(--text-dim);line-height:1.5}.site-guide h5{margin:16px 0 4px;font-size:13.5px;color:var(--text)}.site-guide h5:first-of-type{margin-top:0}.guide-lang-content{transition:opacity 0.15s ease}.lang-btn-group .lang-btn{transition:background 0.15s ease,border-color 0.15s ease,color 0.15s ease}.lang-btn-group .lang-btn:hover{border-color:#3b82f6}.lang-btn-group .lang-btn.active:hover{border-color:#3b82f6}@media(max-width:360px){.guide-lang-toggle{flex-wrap:wrap;row-gap:8px}}.report-card{border:1px solid var(--border);border-radius:10px;margin-bottom:12px;background:var(--bg);overflow:hidden;transition:border-color 0.15s ease}.report-card:hover{border-color:var(--text-dim)}.report-card.expanded{border-color:var(--text-dim)}.report-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:14px;cursor:pointer;background:var(--bg);transition:background 0.15s ease}.report-card-head:hover{background:var(--card)}.report-type-badge{font-size:11px;padding:2px 8px;border-radius:999px;background:var(--card);border:1px solid var(--border);color:var(--text-dim);flex-shrink:0}.report-card-head-right{display:flex;align-items:center;gap:8px;flex-shrink:0}.report-expand-arrow{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--text-dim);transition:transform 0.15s ease;flex-shrink:0}.report-card.expanded .report-expand-arrow{transform:rotate(180deg)}.report-card-body{max-height:0;overflow:hidden;transition:max-height 0.2s ease}.report-card.expanded .report-card-body{max-height:2000px}.report-card-body-inner{padding:0 14px 14px;border-top:1px solid var(--border);overflow-wrap:anywhere;word-break:break-word}.report-modal-meta{font-size:12px;color:var(--text-dim);margin:12px 0 14px}.report-modal-label{display:block;font-size:11px;font-weight:600;color:var(--text-dim);text-transform:uppercase;letter-spacing:0.4px;margin-bottom:6px}.report-modal-message{font-size:14px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background:var(--card);border:1px solid var(--border);border-radius:8px;padding:12px;margin-bottom:14px;max-height:280px;overflow-y:auto}.report-modal-reply{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;padding:10px 12px;margin-bottom:14px;overflow-wrap:anywhere;word-break:break-word}.report-modal-reply p{font-size:14px;color:var(--text);margin:0;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.report-modal-reply.empty p{color:var(--text-dim);font-style:italic}.report-status-pill{font-size:11px;font-weight:600;padding:3px 10px;border-radius:999px;border:1px solid transparent;white-space:nowrap;flex-shrink:0}.status-pill-pending{color:#f59e0b;border-color:#f59e0b;background:rgba(245,158,11,0.12)}.status-pill-progress{color:#3b82f6;border-color:#3b82f6;background:rgba(59,130,246,0.12)}.status-pill-resolved{color:#22c55e;border-color:#22c55e;background:rgba(34,197,94,0.12)}.status-pill-denied{color:#ef4444;border-color:#ef4444;background:rgba(239,68,68,0.12)}.report-admin-reply{background:var(--card);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;padding:8px 12px;margin:0 0 10px}.report-admin-reply-label{display:block;font-size:11px;font-weight:600;color:var(--accent);margin-bottom:4px}.report-admin-reply p{font-size:13px;color:var(--text);margin:0;white-space:pre-wrap}.report-card-foot{display:flex;justify-content:flex-end;align-items:center;gap:8px;margin-top:4px}.report-meta{font-size:11px;color:var(--text-dim)}.report-delete-btn{display:inline-flex;align-items:center;gap:4px;background:none;border:none;padding:4px 8px;font-size:12px;color:var(--text-dim);cursor:pointer;width:auto}.report-delete-btn:hover{color:#ef4444;background:none}.report-delete-btn svg{flex-shrink:0}button.toolbar-btn{width:auto;flex:0 0 auto;white-space:nowrap}@media(max-width:768px){.upload-grid{display:flex;gap:8px;margin-bottom:8px}.upload-grid .upload-zone{flex:1 1 0;min-width:0;padding:12px 6px;border-radius:10px;display:flex;flex-direction:row;align-items:center;justify-content:center;gap:6px}.upload-grid .upload-zone .icon{font-size:16px;margin-bottom:0}.upload-grid .upload-zone .zone-label{font-size:12.5px;font-weight:600;margin-bottom:0;white-space:nowrap}.upload-grid .upload-zone>div:not(.icon):not(.zone-label){display:none}.toolbar-row{align-items:flex-start !important}.toolbar-row .breadcrumb-bar{flex:1 1 auto;min-width:0}.toolbar-row #newFolderBtn{flex:0 0 auto;margin-left:auto}.upload-grid .upload-zone.uploading{flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:14px 10px}.upload-grid .upload-zone.uploading .upload-progress{display:block !important;width:100%;margin-top:8px}.upload-grid .upload-zone.uploading .upload-progress-text{text-align:center}.storage-card{position:relative}.storage-card strong{display:inline-block}#storagePercentPill{position:absolute;top:20px;right:20px;font-size:11px;font-weight:700;color:var(--accent);background:rgba(91,140,255,0.14);padding:3px 10px;border-radius:20px;letter-spacing:0.2px;white-space:nowrap}.storage-bar-fill.warning~#storagePercentPill,#storagePercentPill.warning{color:var(--warning);background:rgba(255,193,7,0.14)}#storagePercentPill.full{color:var(--danger);background:rgba(255,91,110,0.14)}.storage-bar-track{height:6px;border-radius:999px}.storage-bar-fill{border-radius:999px}.file-actions,.folder-actions{display:none !important}.file-card,.folder-card{position:relative;align-items:center;flex-wrap:nowrap}.file-card{flex-direction:row}.action-sheet-trigger{width:36px;height:36px;flex:0 0 auto;margin:0 !important;padding:0;display:flex !important;align-items:center;justify-content:center;background:none;border:none;border-radius:50%;color:var(--text-dim)}.action-sheet-trigger:hover,.action-sheet-trigger:active{background:rgba(255,255,255,0.06);color:var(--text)}.action-sheet-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.5);z-index:400}.action-sheet-overlay.open{display:block}.action-sheet{position:fixed;left:0;right:0;bottom:0;background:var(--card);border-top:1px solid var(--border);border-radius:16px 16px 0 0;padding:8px 8px calc(16px+env(safe-area-inset-bottom,0px));transform:translateY(100%);transition:transform 0.22s ease;z-index:401}.action-sheet-overlay.open .action-sheet{transform:translateY(0)}.action-sheet-handle{width:36px;height:4px;border-radius:4px;background:var(--border);margin:6px auto 10px}.action-sheet-title{font-size:13px;color:var(--text-dim);padding:0 12px 8px;word-break:break-word}.action-sheet-item{display:flex;align-items:center;gap:12px;width:100%;margin:0;padding:13px 12px;background:none;border:none;border-radius:10px;font-size:15px;color:var(--text);text-align:left}.action-sheet-item:active{background:rgba(255,255,255,0.06)}.action-sheet-item.danger{color:var(--danger);background:none}.action-sheet-item.danger:active{background:rgba(255,91,110,0.1)}.action-sheet-item svg{flex-shrink:0}.topbar{position:sticky;top:0;z-index:100;background:rgba(23,26,35,0.82);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}}.toast-stack{position:fixed;left:50%;bottom:24px;transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;z-index:1000;width:min(92vw,420px);pointer-events:none}.toast{display:flex;align-items:center;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:12px 14px;box-shadow:0 8px 24px rgba(0,0,0,0.35);font-size:13px;color:var(--text);pointer-events:auto;opacity:0;transform:translateY(8px);transition:opacity 0.18s ease-out,transform 0.18s ease-out}.toast.show{opacity:1;transform:translateY(0)}.toast.toast-error{border-color:rgba(255,91,110,0.4)}.toast.toast-success{border-color:rgba(74,222,128,0.4)}.toast .toast-spinner{width:14px;height:14px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--accent);animation:toast-spin 0.7s linear infinite;flex-shrink:0}.toast .toast-icon{flex-shrink:0;display:flex}.toast .toast-text{flex:1;line-height:1.4}@keyframes toast-spin{to{transform:rotate(360deg)}}.deletion-purge-backdrop{position:fixed;inset:0;background:#000;opacity:0;pointer-events:none;z-index:2000;transition:opacity 0.6s ease}.deletion-purge-backdrop.show{opacity:1;pointer-events:auto}@keyframes shake{10%,90%{transform:translateX(-1px)}20%,80%{transform:translateX(2px)}30%,50%,70%{transform:translateX(-4px)}40%,60%{transform:translateX(4px)}}.shake-error{animation:shake 0.4s ease;border-color:var(--danger,#ff5b6e)!important}.item-row--pending-delete{opacity:0.4;filter:grayscale(50%);pointer-events:none;transition:all 0.4s ease}.item-row--deleting{transform:translateX(20px);opacity:0;transition:all 0.4s ease;pointer-events:none}.btn-inline-spinner{display:inline-block;width:13px;height:13px;border-radius:50%;border:2px solid rgba(255,255,255,0.35);border-top-color:#fff;animation:toast-spin 0.7s linear infinite;margin-right:7px;vertical-align:-2px}.btn-checkmark{display:inline-block;margin-right:6px;color:#4ade80;font-weight:700;animation:checkmark-pop 0.3s ease;vertical-align:-1px}@keyframes checkmark-pop{from{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.6);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);align-items:center;justify-content:center;z-index:1000;padding:20px;box-sizing:border-box;opacity:1;transition:opacity 0.18s ease}.modal-overlay.show{display:flex}.modal-overlay.closing{opacity:0}.modal-box.share-modal{background:var(--bg-panel,#1e1e2e);border-radius:14px;padding:22px;width:100%;max-width:420px;max-height:85vh;overflow-y:auto;box-sizing:border-box}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px}.modal-header h2{font-size:17px;line-height:1.35;min-width:0;word-break:break-word}.modal-header h2 #shareModalItemName{display:block;font-size:14px;font-weight:500;color:var(--text-dim,#999);margin-top:2px}.modal-close-btn{background:none;border:none;width:32px;height:32px;min-width:0;padding:0;margin:0;display:flex;align-items:center;justify-content:center;font-size:20px;line-height:1;border-radius:8px;cursor:pointer;color:var(--text-dim,#999);transition:background 0.15s ease,color 0.15s ease}.modal-close-btn:hover{background:rgba(255,255,255,0.08);color:var(--text,#fff)}.modal-actions{display:flex;gap:10px;margin-top:20px}.modal-actions button{width:auto;flex:1 1 0;margin-top:0;padding:10px 14px;font-size:14px}.modal-actions .btn-secondary{background:transparent;border:1px solid var(--border,#333);color:var(--text,#fff)}.modal-actions .btn-secondary:hover{background:rgba(255,255,255,0.06)}.modal-actions .btn-primary{background:var(--accent);color:#fff;border:none}.modal-actions .btn-primary:hover{background:var(--accent-hover)}.shared-badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;background:var(--accent-soft,#2d3f5c);color:var(--accent,#7aa2f7);border-radius:6px;padding:3px 8px;white-space:nowrap;flex-shrink:0;width:auto;height:auto;margin:0;border:none}.shared-badge svg{flex-shrink:0}.files-tab-bar{display:flex;gap:4px;margin-bottom:14px;border-bottom:1px solid var(--border,#2a2a3a)}.files-tab{width:auto;background:none;border:none;border-radius:0;color:var(--text-dim,#999);font-size:14px;font-weight:600;padding:8px 4px 10px;margin:0 14px 0 0;cursor:pointer;position:relative;top:1px;border-bottom:2px solid transparent;transition:color 0.15s ease,border-color 0.15s ease}.files-tab:hover{background:none;color:var(--text,#fff)}.files-tab.active{color:var(--text,#fff);border-bottom-color:var(--accent)}.share-search-results{position:relative;margin-top:6px;border:1px solid var(--border,#333);border-radius:8px;max-height:180px;overflow-y:auto;background:var(--bg-input,#2a2a3a)}.share-search-result-item{padding:10px 12px;cursor:pointer;display:flex;flex-direction:column;border-bottom:1px solid var(--border,#333)}.share-search-result-item:last-child{border-bottom:none}.share-search-result-item:hover{background:var(--bg-hover,#34344a)}.share-search-result-name{font-weight:600;font-size:14px}.share-search-result-id{font-size:12px;color:var(--text-dim,#999)}.share-search-empty{padding:10px 12px;font-size:13px;color:var(--text-dim,#999)}.share-chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 4px}.share-chip{display:flex;align-items:center;gap:6px;background:var(--accent-soft,#2d3f5c);color:var(--accent,#7aa2f7);border-radius:999px;padding:5px 10px;font-size:13px}.share-chip .chip-remove{cursor:pointer;font-weight:bold;opacity:0.7}.share-chip .chip-remove:hover{opacity:1}.share-section{margin-top:18px}.share-section h3{font-size:13px;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-dim,#999);margin-bottom:8px}.share-current-list{list-style:none;padding:0;margin:0}.share-current-list li{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--border,#2a2a3a);font-size:14px;flex-wrap:wrap}.share-current-list li>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1 auto}.share-current-list li .revoke-btn{flex:0 0 auto}.share-empty-msg{color:var(--text-dim,#999);font-size:13px}.share-modal-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px 0 20px;color:var(--text-dim,#999);font-size:13px;animation:shareLoadingFadeIn 0.15s ease}.share-modal-loading-active{display:flex !important;visibility:visible !important;opacity:1 !important;width:100% !important}@keyframes shareLoadingFadeIn{from{opacity:0}to{opacity:1}}.share-spinner{width:26px;height:26px;border-radius:50%;border:3px solid rgba(91,140,255,0.18);border-top-color:var(--accent);animation:shareSpinnerRotate 0.7s linear infinite}@keyframes shareSpinnerRotate{to{transform:rotate(360deg)}}.share-current-list.loaded{animation:shareListFadeIn 0.2s ease}@keyframes shareListFadeIn{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.revoke-btn{width:auto;background:none;border:none;color:#e06666;cursor:pointer;font-size:13px;font-weight:600;padding:4px 8px;margin:0;border-radius:6px;transition:background 0.15s ease,color 0.15s ease}.revoke-btn:hover{background:rgba(224,102,102,0.12);color:#ff7a7a}.revoke-btn:disabled{opacity:0.6;cursor:default}#shareRevokeAllBtn{width:100%;box-sizing:border-box;background:none;border:1px solid #e06666;color:#e06666;cursor:pointer;font-size:13px;font-weight:600;padding:8px 10px;margin:0 0 10px;border-radius:8px;transition:background 0.15s ease,color 0.15s ease}#shareRevokeAllBtn:hover{background:rgba(224,102,102,0.12);color:#ff7a7a}#shareRevokeAllBtn:disabled{opacity:0.6;cursor:default}.share-row-pending{opacity:0.4;filter:grayscale(50%);pointer-events:none;transition:all 0.4s ease}.share-row-removing{opacity:0;transform:translateX(20px);transition:all 0.4s ease;pointer-events:none}.shared-with-me-badge{display:inline-block;font-size:11px;font-weight:600;background:var(--accent-soft,#2d3f5c);color:var(--accent,#7aa2f7);border-radius:6px;padding:4px 9px;white-space:normal;word-break:break-word;max-width:100%;line-height:1.4}.file-row.read-only .file-action-delete,.file-row.read-only .file-action-rename,.file-row.read-only .file-action-move,.file-row.read-only .file-upload-btn{display:none !important}#notificationBellBtn{position:relative;display:inline-flex;align-items:center;justify-content:center;width:auto;padding:8px 10px;margin:0}#notifUnreadBadge{position:absolute;top:-6px;right:-6px}.section-toggle-badge{display:flex;align-items:center;justify-content:center;min-width:17px;height:17px;padding:0 4px;background:var(--danger);color:#fff;font-size:10px;font-weight:700;line-height:1;border-radius:999px;border:2px solid var(--card)}.notif-box{width:100%;max-width:420px;text-align:left;max-height:82vh;overflow-y:auto}.notif-box h3{padding-right:28px}#notifTabs{display:flex;flex-wrap:nowrap;gap:8px;margin:12px 0 16px;padding-bottom:0;border-bottom:none}#notifTabs button.settings-tab{flex:1;width:auto;text-align:center;justify-content:center;white-space:nowrap;padding:9px 10px}@media(max-width:480px){.notif-box{width:calc(100vw - 32px);max-width:420px;max-height:80vh;padding:22px 18px}}.notif-pane{display:none;flex-direction:column;margin-top:14px}.notif-pane.notif-pane--active{display:flex}#notifActivityList{display:flex;flex-direction:column;gap:10px}.notif-pane-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.notif-clear-all-btn{width:auto;background:transparent;border:1px solid var(--border);color:var(--text-dim);font-size:12px;font-weight:600;padding:5px 10px;margin:0;border-radius:6px;cursor:pointer;transition:border-color 0.15s ease,color 0.15s ease}.notif-clear-all-btn:hover{border-color:var(--danger,#ff5b6e);color:var(--danger,#ff5b6e)}.notif-clear-all-btn:disabled{opacity:0.6;cursor:default}.notif-item{background:#0f1117;border:1px solid var(--border);border-radius:10px;padding:12px 14px;cursor:pointer;transform:scale(1);opacity:1;transition:all 0.3s ease}.notif-item:hover{border-color:var(--text-dim)}.notif-item--clearing{transform:scale(0.95);opacity:0;pointer-events:none}.notif-item--unread{border-color:var(--accent);background:rgba(91,140,255,0.06)}.notif-item-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:4px}.notif-item-title{font-weight:600;font-size:14px}.notif-item-date{font-size:11px;color:var(--text-dim);white-space:nowrap;flex-shrink:0}.notif-item-message{font-size:13px;color:var(--text-dim);line-height:1.5;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.notif-expand-btn{width:auto;background:transparent;border:none;color:var(--accent);font-size:12px;font-weight:600;padding:6px 0 0;margin:0;cursor:pointer}.notif-expand-btn:hover{background:transparent;text-decoration:underline}.notif-item-link-hint{font-size:12px;font-weight:600;color:var(--accent);margin-top:6px}#spotlightBackdrop{display:none;position:fixed;inset:0;background:rgba(0,0,0,0.7);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2100;transition:opacity 0.25s ease;opacity:0}#spotlightBackdrop.show{display:block;opacity:1}.spotlight-active-target{position:relative;z-index:2101;border-radius:10px;box-shadow:0 0 0 4px rgba(91,140,255,0.35),0 0 0 9999px rgba(0,0,0,0.7),0 0 24px 4px rgba(91,140,255,0.55);transition:box-shadow 0.25s ease;animation:spotlightPulse 1.8s ease-in-out infinite}.topbar:has(.spotlight-active-target){z-index:2101}@keyframes spotlightPulse{0%,100%{box-shadow:0 0 0 4px rgba(91,140,255,0.35),0 0 0 9999px rgba(0,0,0,0.7),0 0 24px 4px rgba(91,140,255,0.55)}50%{box-shadow:0 0 0 6px rgba(91,140,255,0.5),0 0 0 9999px rgba(0,0,0,0.7),0 0 32px 8px rgba(91,140,255,0.75)}}.spotlight-tooltip{position:fixed;top:-9999px;left:-9999px;z-index:2102;width:320px;max-width:calc(100vw - 32px);background:var(--card);border:1px solid var(--border);border-radius:14px;padding:18px 20px;box-shadow:0 12px 40px rgba(0,0,0,0.5);opacity:0;transform:translateY(8px);transition:opacity 0.25s ease,transform 0.25s ease,top 0.25s ease,left 0.25s ease;pointer-events:none}.spotlight-tooltip.show{opacity:1;transform:translateY(0);pointer-events:auto}.spotlight-badge{display:inline-block;font-size:11px;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:var(--accent);background:rgba(91,140,255,0.12);border:1px solid rgba(91,140,255,0.3);border-radius:999px;padding:3px 10px;margin-bottom:10px}.spotlight-copy{font-size:14.5px;line-height:1.55;color:var(--text);margin-bottom:16px}.spotlight-actions{display:flex;align-items:center;justify-content:space-between;gap:8px}.spotlight-actions-right{display:flex;gap:8px}.spotlight-btn{min-height:44px;padding:0 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;border:1px solid var(--border);background:transparent;color:var(--text-dim);transition:background 0.15s ease,border-color 0.15s ease,color 0.15s ease}.spotlight-btn:hover{background:rgba(255,255,255,0.06);color:var(--text)}.spotlight-btn-next{background:var(--accent);border-color:var(--accent);color:#fff}.spotlight-btn-next:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.spotlight-btn-skip{border-color:transparent;background:transparent;color:var(--text-dim);padding:0 8px}.spotlight-btn-skip:hover{color:var(--text);background:transparent;text-decoration:underline}.spotlight-tooltip::after{content:"";position:absolute;width:14px;height:14px;background:var(--card);border:1px solid var(--border);transform:rotate(45deg);left:var(--spotlight-arrow-left,28px)}.spotlight-tooltip[data-arrow="down"]::after{bottom:-8px;border-top:none;border-left:none}.spotlight-tooltip[data-arrow="up"]::after{top:-8px;border-bottom:none;border-right:none}.spotlight-finish-box{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)scale(0.92);z-index:2102;width:340px;max-width:calc(100vw - 32px);background:var(--card);border:1px solid var(--border);border-radius:16px;padding:32px 24px 24px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,0.55);opacity:0;pointer-events:none;transition:opacity 0.3s ease,transform 0.3s ease}.spotlight-finish-box.show{opacity:1;pointer-events:auto;transform:translate(-50%,-50%)scale(1)}.spotlight-finish-check{width:64px;height:64px;margin:0 auto 16px;border-radius:50%;background:rgba(74,222,128,0.12);border:2px solid var(--success);display:flex;align-items:center;justify-content:center}.spotlight-finish-check svg{width:30px;height:30px;stroke:var(--success)}.spotlight-finish-check svg path{stroke-dasharray:30;stroke-dashoffset:30;animation:spotlightCheckDraw 0.5s ease 0.15s forwards}@keyframes spotlightCheckDraw{to{stroke-dashoffset:0}}.spotlight-finish-title{font-size:18px;font-weight:700;color:var(--text);margin-bottom:6px}.spotlight-finish-copy{font-size:14px;color:var(--text-dim);line-height:1.5;margin-bottom:20px}.spotlight-finish-cta{min-height:44px;width:100%;border-radius:8px;font-size:15px;font-weight:700;background:var(--accent);border:none;color:#fff;cursor:pointer}.spotlight-finish-cta:hover{background:var(--accent-hover)}.spotlight-confetti-piece{position:fixed;top:50%;left:50%;width:8px;height:8px;z-index:2103;border-radius:2px;opacity:0;pointer-events:none;animation:spotlightConfettiFall 1.1s ease-out forwards}@keyframes spotlightConfettiFall{0%{opacity:1;transform:translate(0,0)rotate(0deg)}100%{opacity:0;transform:var(--confetti-end,translate(0,220px)rotate(360deg))}}@media(max-width:768px){.spotlight-tooltip{max-width:calc(100vw - 24px);padding:12px 16px}.spotlight-actions{flex-wrap:nowrap;gap:8px}.spotlight-actions-right{gap:6px}.spotlight-btn{min-height:44px;padding:0 12px;white-space:nowrap}.spotlight-finish-box{max-width:calc(100vw - 24px);padding:28px 20px 20px}}.replay-tour-row{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}.replay-tour-title{margin:0;font-size:16px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.replay-tour-btn-wrap{flex-shrink:0}.replay-tour-btn{width:fit-content;display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:13px;margin:0;white-space:nowrap;color:var(--accent,#60a5fa);background:rgba(59,130,246,0.1);border:1px solid rgba(59,130,246,0.2);border-radius:6px}.replay-tour-label-short{display:none}@media(max-width:640px){.replay-tour-title{font-size:14px}.replay-tour-btn{padding:4px 10px;font-size:12px;font-weight:500;gap:4px}.replay-tour-label-full{display:none}.replay-tour-label-short{display:inline}}button.btn-loading{position:relative;pointer-events:none;cursor:progress;opacity:0.85}button.btn-loading .btn-spinner{display:inline-block;flex-shrink:0;width:14px;height:14px;box-sizing:border-box;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin 0.7s linear infinite}button.btn-loading>svg{display:none}@keyframes btn-spin{to{transform:rotate(360deg)}}.file-card.is-busy,.item-row.is-busy{position:relative;pointer-events:none}.file-card.is-busy::after,.item-row.is-busy::after{content:"";position:absolute;top:50%;right:14px;width:16px;height:16px;margin-top:-8px;box-sizing:border-box;border:2px solid var(--accent);border-right-color:transparent;border-radius:50%;animation:btn-spin 0.7s linear infinite}@media(prefers-reduced-motion:reduce){button.btn-loading .btn-spinner,.file-card.is-busy::after,.item-row.is-busy::after,.file-icon-spinner{animation-duration:1.6s}}.file-card.row-view-pending{opacity:0.55;pointer-events:none;transition:opacity 0.15s ease}.file-icon-slot{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.file-icon-spinner{display:inline-block;width:18px;height:18px;box-sizing:border-box;border:2.5px solid rgba(255,255,255,0.25);border-top-color:#ffffff;border-radius:50%;animation:btn-spin 0.7s linear infinite}.file-actions button.secondary.btn-loading{display:flex;align-items:center;justify-content:center;gap:6px}.file-actions button.secondary.btn-loading .btn-spinner{border-color:rgba(255,255,255,0.3);border-right-color:#ffffff;width:15px;height:15px}.btn-download-status{display:inline-block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}@media(max-width:480px){.file-actions button.secondary.btn-loading{width:100%;padding-left:10px;padding-right:10px}.btn-download-status{font-size:12.5px}}
