@import url('./icon-map.css?v=1.3.2');

/* Vector UI glyphs preserve the custom Zorc identity at every screen density. */
.icon[data-icon]{
  display:inline-block;
  background-color:currentColor;
  -webkit-mask-image:var(--icon-source);
  mask-image:var(--icon-source);
  mask-mode:alpha;
  -webkit-mask-size:100% 100%;
  mask-size:100% 100%;
  -webkit-mask-position:center;
  mask-position:center;
  -webkit-mask-repeat:no-repeat;
  mask-repeat:no-repeat;
  pointer-events:none;
}
.brand{gap:11px;letter-spacing:-1.25px}
.brand-symbol{display:block;flex-shrink:0;width:43px;height:43px;object-fit:contain}
.brand-sub{font-size:.8em;letter-spacing:.3px;color:#b4ab96}
.sidebar>.brand{margin-left:6px;gap:10px}
.sidebar .brand-symbol{width:39px;height:39px}
.sidebar-note .mini-mark{display:block;object-fit:contain;width:35px;height:35px;opacity:.7}
.workspace-avatar{width:33px;height:35px;border-radius:5px 1px 5px 5px}
.workspace-avatar .icon{width:24px;height:24px}
.file-icon,.stat-icon,.quick-action-icon,.auth-panel-icon{
  border-radius:7px 2px 7px 7px;
}
.auth-card{border-radius:13px 4px 13px 13px;border-top-color:#6c5932}
.auth-panel-icon{width:40px;height:42px;background:#242117}
.auth-panel-icon .icon{width:28px;height:28px}
.intro-file .file-icon .icon{width:25px;height:25px}
.stat-icon .icon{width:26px;height:26px}
.item-name .file-icon .icon{width:24px;height:24px}
.file-hero .file-icon .icon{width:58px;height:58px}
.quick-action-icon .icon{width:25px;height:25px}
.upload-large-icon .icon{width:39px;height:39px}
.side-nav .nav-item .icon{width:22px;height:22px}
.nav-item.active{border-left:2px solid var(--accent);padding-left:11px;border-radius:5px 2px 5px 5px}
.stat{border-radius:8px 3px 8px 8px}
.button{border-radius:6px 2px 6px 6px}
.primary .icon{background-color:currentColor}
.input-icon>.icon{width:21px;height:21px;left:12px}
.password-toggle .icon{width:21px;height:21px}
.icon-button .icon{width:21px;height:21px}
.sharing-badge .icon{width:16px;height:16px}
.preview-note>.icon{width:20px;height:20px;margin-top:0}
.inline-info>.icon,.preview-explanation>.icon{width:19px;height:19px}

/* Real checkbox state with switch semantics: pointer, Space and screen-reader support. */
.auth-options{gap:0;border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);margin:1px 0 24px}
.toggle-row{position:relative;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:49px;width:100%;font-size:13px;line-height:1.5;cursor:pointer;color:#c3c1b8;border-radius:4px}
.toggle-row+.toggle-row{border-top:1px solid var(--border-soft)}
.toggle-row:hover{color:var(--text);background:#24231f}
.toggle-row input[role=switch]{position:absolute;right:0;top:50%;transform:translateY(-50%);width:43px;height:25px;opacity:0;margin:0;z-index:1;cursor:pointer}
.toggle-track{position:relative;display:block;flex:0 0 43px;width:43px;height:25px;border:1px solid #68665b;background:#282825;border-radius:20px;transition:background-color .18s ease,border-color .18s ease}
.toggle-thumb{display:block;position:absolute;top:3px;left:3px;width:17px;height:17px;background:#a7a69b;border-radius:50%;transition:transform .18s ease,background-color .18s ease}
.toggle-input:checked+.toggle-track{border-color:var(--accent);background:var(--accent)}
.toggle-input:checked+.toggle-track .toggle-thumb{transform:translateX(18px);background:#272116}
.toggle-input:focus-visible+.toggle-track{outline:2px solid var(--accent-hover);outline-offset:4px}
.toggle-row:has(input:checked){color:var(--text)}
.toggle-row:has(input:disabled){opacity:.45;cursor:not-allowed}
#recovery-result .toggle-row{font-size:12px;margin-top:12px;padding-top:9px;border-top:1px solid var(--border);min-height:47px;gap:12px}
.recovery-section .toggle-track{flex-shrink:0}

/* Sharing choices remain exclusive radio options with custom styling. */
.share-option input[type=radio]{appearance:none;position:relative;width:17px;height:17px;border:1px solid #828075;border-radius:50%;background:#232320;display:grid;place-items:center}
.share-option input[type=radio]:checked{border-color:var(--accent)}
.share-option input[type=radio]:checked:after{content:'';display:block;width:7px;height:7px;border-radius:2px;background:var(--accent);transform:rotate(45deg)}
.share-option>.icon{width:25px;height:25px}
.queued-file>span:not(.icon){flex:1}
.queued-file>.icon{flex:0 0 23px;width:23px;height:23px;overflow:visible}

@media(max-width:760px){
  .auth-header .brand{gap:8px;font-size:24px}
  .auth-header .brand-symbol{width:36px;height:36px}
  .auth-options{margin-bottom:22px}
  .toggle-row{min-height:51px;font-size:13px}
}
@media(max-width:560px){
  .stat-icon .icon{width:23px;height:23px}
  .item-name .file-icon .icon{width:22px;height:22px}
  .sharing-badge .icon{width:14px;height:14px}
  .row-share .icon{width:18px;height:18px}
  .share-option>.icon{width:22px;height:22px}
}
@media(forced-colors:active){
  .toggle-track{border:1px solid ButtonText}
  .toggle-thumb{background:ButtonText}
  .toggle-input:checked+.toggle-track{background:Highlight;border-color:Highlight}
  .toggle-input:checked+.toggle-track .toggle-thumb{background:HighlightText}
  .icon[data-icon]{background-color:currentColor;forced-color-adjust:none}
}
