:root{--bg-page:#fff;--bg-surface:#fafafa;--bg-card:#fff;--border-color:#e5e5e5;--text-primary:#0a0a0a;--text-secondary:#525252;--brand-accent:#0a0a0a;--brand-accent-hover:#262626;--brand-accent-soft:#f4f4f5}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-surface);color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh;font-family:Plus Jakarta Sans,system-ui,-apple-system,sans-serif;overflow-x:hidden}@keyframes pulseRing{0%{opacity:.75;transform:scale(.75)}to{opacity:0;transform:scale(1.45)}}@keyframes barSlide{0%{left:-45%}to{left:100%}}@keyframes viewFadeIn{0%{opacity:0}to{opacity:1}}@keyframes cardReveal{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes modalPopIn{0%{opacity:0;transform:translateY(16px)scale(.965)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes modalPopOut{0%{opacity:1;transform:translate(0,0)scale(1)}to{opacity:0;transform:translateY(12px)scale(.965)}}@keyframes overlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes overlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes tabSlideFromRight{0%{opacity:0;transform:translate(18px)}to{opacity:1;transform:translate(0,0)}}@keyframes tabSlideFromLeft{0%{opacity:0;transform:translate(-18px)}to{opacity:1;transform:translate(0,0)}}@keyframes linktreeHeaderReveal{0%{opacity:0;transform:translateY(-10px)scale(.98)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes linktreeCardPopUp{0%{opacity:0;transform:translateY(18px)scale(.95)}70%{opacity:1;transform:translateY(-2px)scale(1.008)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes featuredCardSubtleAttention{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.014)rotate(.45deg)}50%{transform:scale(1.018)rotate(-.45deg)}75%{transform:scale(1.012)rotate(.25deg)}}#loader-screen{z-index:100;background:var(--bg-page);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.loader-brand{justify-content:center;align-items:center;width:64px;height:64px;display:flex;position:relative}.pulse-ring{border:2px solid var(--brand-accent);border-radius:50%;animation:1.6s cubic-bezier(.22,1,.36,1) infinite pulseRing;position:absolute;inset:0}.loader-bar-track{background:#e5e5e5;border-radius:999px;width:160px;height:3px;position:relative;overflow:hidden}.loader-bar-fill{background:var(--brand-accent);border-radius:999px;width:45%;height:100%;animation:1.2s cubic-bezier(.4,0,.2,1) infinite barSlide;position:absolute;top:0;left:-45%}#loader-text{color:var(--text-secondary);font-size:13px;font-weight:500}#directory-view{min-height:100vh;animation:.45s cubic-bezier(.22,1,.36,1) forwards viewFadeIn}.topbar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--border-color);z-index:40;background:#ffffffeb;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:16px;max-width:1160px;margin:0 auto;padding:14px 24px;display:flex}.brand-logo{color:var(--text-primary);letter-spacing:-.02em;align-items:center;gap:10px;font-size:18px;font-weight:800;text-decoration:none;display:inline-flex}.brand-lockup{flex-shrink:0;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-wordmark{object-fit:contain;filter:brightness(0);width:auto;height:26px;display:block}.brand-divider{background:#d4d4d4;width:1px;height:18px;display:inline-block}.brand-subtext{letter-spacing:.18em;color:#525252;font-size:12.5px;font-weight:600;line-height:1;transform:translateY(.5px)}.upload-label-mobile{display:none}.topbar-actions{align-items:center;gap:10px;display:flex}.doc-badge{background:var(--bg-surface);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:600}.btn-upload-trigger{background:var(--brand-accent);color:#fff;border:1px solid var(--brand-accent);cursor:pointer;border-radius:10px;align-items:center;gap:7px;padding:9px 15px;font-family:inherit;font-size:13px;font-weight:600;transition:background .2s,transform .15s;display:inline-flex}.btn-upload-trigger:hover{background:var(--brand-accent-hover)}.btn-sign-out{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:6px;padding:9px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s;display:inline-flex}.btn-sign-out:hover{color:var(--text-primary);background:#f4f4f5}.btn-sign-out.is-copied-portal{color:#0a0a0a;background:#f5f5f4;border-color:#0a0a0a}.main-container{max-width:1160px;margin:0 auto;padding:36px 24px 64px}.section-heading{margin-bottom:24px}.section-heading h1{color:var(--text-primary);letter-spacing:-.02em;margin-bottom:6px;font-size:24px;font-weight:800}.section-heading p{color:var(--text-secondary);font-size:14px}#book-list.grid{grid-template-columns:repeat(auto-fill,minmax(310px,1fr));align-items:stretch;gap:18px;display:grid}.card{background:var(--bg-card);border:1px solid var(--border-color);opacity:0;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:190px;padding:20px;transition:transform .2s,box-shadow .2s,border-color .2s;animation:.45s cubic-bezier(.22,1,.36,1) forwards cardReveal;display:flex;box-shadow:0 2px 10px #00000008}.card:hover{border-color:#a3a3a3;transform:translateY(-2px);box-shadow:0 10px 24px #0000000f}.card.is-hidden-doc{opacity:.85;background:#fafafa;border-style:dashed;border-color:#a3a3a3}.card-meta{color:var(--text-secondary);flex-wrap:nowrap;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;display:flex}.card-type-pill{letter-spacing:.04em;border:1px solid #d4d4d8;border-radius:6px;padding:2px 7px;font-size:10px;font-weight:700}.card-type-pill.is-pdf{color:#fff;background:#0a0a0a;border-color:#0a0a0a}.card-type-pill.is-excel{color:#0a0a0a;background:#f4f4f5}.card-type-pill.is-link{color:#0a0a0a;background:#fff;border-color:#0a0a0a}.card-type-pill.is-hidden-badge{color:#525252;background:#fff;border-style:dashed}.card h3{color:var(--text-primary);margin-bottom:8px;font-size:16px;font-weight:700;line-height:1.4}.card-uploader{color:var(--text-secondary);margin-bottom:18px;font-size:12px}.card-actions{align-items:center;gap:8px;display:flex}.btn-open{background:var(--brand-accent);color:#fff;border:1px solid var(--brand-accent);cursor:pointer;border-radius:10px;flex:1;height:40px;font-family:inherit;font-size:13px;font-weight:600;transition:background .2s}.btn-open:hover{background:var(--brand-accent-hover)}.btn-icon-action{border:1px solid var(--border-color);color:#404040;cursor:pointer;background:#fff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:all .2s;display:inline-flex}.btn-icon-action:hover:not(:disabled){color:#0a0a0a;background:#f4f4f5;border-color:#0a0a0a}.btn-icon-action.is-active-hidden,.btn-icon-action.is-copied{color:#fff;background:#0a0a0a;border-color:#0a0a0a}.btn-icon-action.is-has-thumb{color:#0a0a0a;background:#f5f5f4;border-color:#0a0a0a}.btn-icon-action:disabled{opacity:.4;cursor:not-allowed}.modal-overlay{z-index:9000;will-change:opacity;background:#0a0a0a7a;justify-content:center;align-items:center;width:100vw;height:100vh;padding:24px 16px;animation:.22s cubic-bezier(.22,1,.36,1) forwards overlayFadeIn;display:flex;position:fixed;inset:0;overflow-y:auto}.modal-overlay.is-closing{pointer-events:none;animation:.2s cubic-bezier(.4,0,.2,1) forwards overlayFadeOut}.modal-card{border:1px solid var(--border-color);backface-visibility:hidden;will-change:transform, opacity;background:#fff;border-top:4px solid #0a0a0a;border-radius:16px;width:100%;max-width:440px;max-height:calc(100vh - 48px);margin:auto;padding:24px;animation:.26s cubic-bezier(.22,1,.36,1) forwards modalPopIn;position:relative;overflow-y:auto;transform:translateZ(0);box-shadow:0 24px 48px #00000029}.modal-card.is-closing{animation:.2s cubic-bezier(.4,0,.2,1) forwards modalPopOut}.modal-card.admin-morph-card{max-height:88vh;transition:max-width .34s cubic-bezier(.22,1,.36,1)}.modal-card h2{color:var(--text-primary);margin-bottom:6px;font-size:18px;font-weight:700}.modal-card p{color:var(--text-secondary);margin-bottom:16px;font-size:13px;line-height:1.5}.mode-switcher{border:1px solid var(--border-color);background:#f4f4f5;border-radius:10px;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:16px;padding:4px;display:grid}.mode-tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;padding:8px 10px;font-family:inherit;font-size:12.5px;font-weight:600;transition:all .2s}.mode-tab.is-active{color:#0a0a0a;background:#fff;box-shadow:0 1px 3px #0000001a}.admin-sliding-tabs{border:1px solid var(--border-color);background:#f4f4f5;border-radius:10px;grid-template-columns:1fr 1fr;padding:4px;display:grid;position:relative}.admin-tab-glider{pointer-events:none;background:#fff;border-radius:7px;width:calc(50% - 4px);height:calc(100% - 8px);transition:transform .3s cubic-bezier(.22,1,.36,1);position:absolute;top:4px;left:4px;box-shadow:0 1px 4px #00000017}.admin-tab-btn{z-index:1;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-family:inherit;font-size:12.5px;font-weight:600;transition:color .25s;display:inline-flex;position:relative}.admin-tab-btn.is-active{color:#0a0a0a}.admin-body-morph{transition:height .34s cubic-bezier(.22,1,.36,1);overflow:hidden}.admin-tab-slide.is-from-right{animation:.3s cubic-bezier(.22,1,.36,1) forwards tabSlideFromRight}.admin-tab-slide.is-from-left{animation:.3s cubic-bezier(.22,1,.36,1) forwards tabSlideFromLeft}.form-group{text-align:left;margin-bottom:14px}.form-group label{color:var(--text-primary);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.form-group input{border:1px solid var(--border-color);width:100%;color:var(--text-primary);background:#fff;border-radius:10px;outline:none;padding:10px 12px;font-family:inherit;font-size:13px}.form-group input:focus{border-color:#0a0a0a}.file-dropzone{color:var(--text-secondary);text-align:center;cursor:pointer;background:#fafafa;border:1.5px dashed #a3a3a3;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:18px 14px;transition:all .2s;display:flex}.file-dropzone:hover,.file-dropzone.has-file{color:#0a0a0a;background:#f4f4f5;border-color:#0a0a0a}.file-dropzone.is-dragover{color:#0a0a0a;background:#f4f4f5;border-style:solid;border-color:#0a0a0a;transform:scale(1.015);box-shadow:0 0 0 4px #0a0a0a14}.thumb-picker-row{color:#525252;cursor:pointer;background:#fafafa;border:1px dashed #d4d4d4;border-radius:10px;align-items:center;gap:10px;padding:10px 12px;font-size:12.5px;transition:border-color .2s,background .2s;display:flex}.thumb-picker-row:hover{color:#0a0a0a;background:#f5f5f4;border-color:#0a0a0a}.btn-primary-full{color:#fff;cursor:pointer;background:#0a0a0a;border:none;border-radius:10px;width:100%;padding:11px 16px;font-family:inherit;font-size:13px;font-weight:600}.btn-primary-full:hover:not(:disabled){background:#262626}.btn-primary-full:disabled{opacity:.6;cursor:not-allowed}#reader-viewport{z-index:60;background:#f3f1ed;flex-direction:column;height:100dvh;animation:.35s forwards viewFadeIn;display:flex;position:fixed;inset:0}#btn-back{z-index:9999;color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;background:#fffffff5;border-radius:8px;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:600;transition:all .2s;position:fixed;top:12px;left:16px;box-shadow:0 2px 8px #00000014}#btn-back:hover{color:#fff;background:#0a0a0a;border-color:#0a0a0a}.excel-viewer-shell{background:#fafafa;flex-direction:column;width:100%;height:100%;display:flex;overflow:hidden}.excel-header{border-bottom:1px solid var(--border-color);background:#fff;border-top:3px solid #0a0a0a;flex-direction:column;gap:10px;padding:12px 20px;display:flex}.excel-top-row{justify-content:space-between;align-items:center;gap:12px;padding-left:165px;display:flex}.excel-top-row.no-back{padding-left:0}.excel-tabs{align-items:center;gap:6px;display:flex;overflow-x:auto}.excel-tab-btn{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;white-space:nowrap;background:#fafafa;border-radius:7px;padding:6px 13px;font-family:inherit;font-size:12.5px;font-weight:600}.excel-tab-btn.is-active{color:#fff;background:#0a0a0a;border-color:#0a0a0a}.excel-scroll-area{flex:1;padding:16px;overflow:auto}.excel-table-card{border:1px solid var(--border-color);background:#fff;border-radius:12px;max-width:1200px;margin:0 auto;overflow-x:auto}.excel-clean-table{border-collapse:collapse;width:100%;font-size:13px}.excel-clean-table th,.excel-clean-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #e5e5e5;border-right:1px solid #e5e5e5;padding:9px 14px}.excel-clean-table tr:first-child td{color:#fff;background:#0a0a0a;font-weight:700}#toast-notification{color:#fff;z-index:9999;background:#0a0a0a;border-radius:999px;padding:10px 18px;font-size:13px;font-weight:500;position:fixed;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #00000040}.label-row-between{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.label-row-between label{margin-bottom:0}.btn-suggestion-chip{color:#0a0a0a;cursor:pointer;background:#f4f4f5;border:1px solid #d4d4d8;border-radius:6px;padding:3px 8px;font-family:inherit;font-size:11px;font-weight:600;transition:all .15s}.btn-suggestion-chip:hover{color:#fff;background:#0a0a0a;border-color:#0a0a0a}.field-hint{color:var(--text-secondary);margin-top:5px;font-size:11px;display:block}.staff-publisher-box{border:1px solid var(--border-color);text-align:left;background:#fafafa;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:14px;padding:10px 12px;display:flex}.staff-publisher-dot{background:#0a0a0a;border-radius:50%;flex-shrink:0;width:8px;height:8px}.flipbook-loading-box{background:#fafafa;flex-direction:column;justify-content:center;align-items:center;gap:18px;width:100%;height:100%;display:flex}.flipbook-stage{-webkit-user-select:none;user-select:none;background:radial-gradient(circle,#f8f7f4 0%,#eeebe5 100%);justify-content:center;align-items:center;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.flipbook-book-wrapper{justify-content:center;align-items:center;display:flex}.flipbook-page{background:#fff;border-radius:2px;overflow:hidden;box-shadow:inset 0 0 0 1px #0000000a}.obscura-flipbook,.stf__parent,.stf__block{box-shadow:none!important;background:0 0!important}.flipbook-book-wrapper.is-single-cover .flipbook-page{box-shadow:0 22px 50px #00000029}.flipbook-nav-btn{z-index:80;border:1px solid var(--border-color);width:44px;height:44px;color:var(--text-primary);cursor:pointer;background:#fffffff0;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:inline-flex;position:fixed;top:50%;transform:translateY(-50%);box-shadow:0 4px 14px #00000014}.flipbook-nav-btn:hover:not(:disabled){color:#fff;background:#0a0a0a;border-color:#0a0a0a;transform:translateY(-50%)scale(1.06)}.flipbook-nav-btn:disabled{opacity:.28;cursor:not-allowed}.flipbook-nav-btn.is-prev{left:18px}.flipbook-nav-btn.is-next{right:18px}.flipbook-bottom-bar{z-index:80;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-color);color:var(--text-secondary);background:#fffffff2;border-radius:999px;align-items:center;gap:14px;padding:6px 14px;font-size:12px;display:inline-flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000014}.flipbook-zoom-group{border-left:1px solid var(--border-color);color:var(--text-primary);align-items:center;gap:8px;padding-left:12px;font-weight:600;display:inline-flex}.flipbook-zoom-group button{color:var(--text-primary);cursor:pointer;background:0 0;border:none;align-items:center;padding:2px;display:inline-flex}@media (width<=768px){.flipbook-stage.is-mobile-stage{padding:0 10px}.flipbook-stage.is-mobile-stage .flipbook-page{border-radius:6px;box-shadow:0 14px 36px #14120f1f}.flipbook-nav-btn,.flipbook-stage.is-mobile-stage .flipbook-nav-btn{-webkit-backdrop-filter:blur(8px);color:#1a1a1a;background:#ffffffb8;border:1px solid #0000000f;width:34px;height:34px;box-shadow:0 4px 14px #00000014}.flipbook-nav-btn.is-prev,.flipbook-stage.is-mobile-stage .flipbook-nav-btn.is-prev{left:8px}.flipbook-nav-btn.is-next,.flipbook-stage.is-mobile-stage .flipbook-nav-btn.is-next{right:8px}.flipbook-stage.is-mobile-stage .flipbook-nav-btn:disabled{opacity:0;pointer-events:none}}.linktree-shell{background:radial-gradient(circle at top,#fff 0%,#f4f3ef 100%);justify-content:center;min-height:100dvh;padding:56px 18px 36px;display:flex}.linktree-container{flex-direction:column;align-items:center;width:100%;max-width:560px;display:flex}.linktree-header{text-align:center;margin-bottom:36px;animation:.55s cubic-bezier(.22,1,.36,1) forwards linktreeHeaderReveal}.linktree-brand-lockup{justify-content:center;align-items:center;gap:20px;margin-bottom:14px;display:inline-flex}.linktree-brand-wordmark{object-fit:contain;filter:brightness(0);width:auto;height:52px;display:block}.linktree-brand-divider{background:#c7c7c7;width:2px;height:34px;display:inline-block}.linktree-brand-subtext{letter-spacing:.22em;color:#171717;font-size:19px;font-weight:700;line-height:1;transform:translateY(1px)}.linktree-subtitle{color:#404040;letter-spacing:.01em;margin:0;font-size:15px;font-weight:500}.linktree-list{flex-direction:column;gap:13px;width:100%;display:flex}.linktree-item-entrance{opacity:0;width:100%;animation:.5s cubic-bezier(.22,1,.36,1) forwards linktreeCardPopUp}.linktree-item-btn{text-align:left;cursor:pointer;background:#fff;border:1px solid #e5e5e5;border-radius:14px;align-items:center;gap:14px;width:100%;padding:15px 17px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex;box-shadow:0 4px 14px #00000008}.linktree-item-btn.is-featured-top{will-change:transform;border-color:#171717;animation:3.6s ease-in-out .75s infinite featuredCardSubtleAttention;box-shadow:0 8px 24px #0001}.linktree-item-btn.is-featured-top:hover{animation-play-state:paused;transform:translateY(-2px)scale(1.015)}.linktree-item-btn:hover{border-color:#0a0a0a;transform:translateY(-2px);box-shadow:0 10px 24px #00000012}.linktree-new-pill{letter-spacing:.08em;color:#fff;background:#0a0a0a;border-radius:999px;flex-shrink:0;padding:2px 7px;font-size:9.5px;font-weight:800}.linktree-item-icon{color:#0a0a0a;background:#f5f5f4;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.linktree-item-thumb{background:#f5f5f4;border:1px solid #e5e5e5;border-radius:10px;flex-shrink:0;width:48px;height:48px;overflow:hidden}.linktree-item-thumb img{object-fit:cover;width:100%;height:100%;display:block}.linktree-item-body{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.linktree-item-title{color:#0a0a0a;white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:700;overflow:hidden}.linktree-item-meta{color:#737373;letter-spacing:.03em;font-size:11.5px}.linktree-item-arrow{color:#737373;flex-shrink:0;transition:transform .2s,color .2s}.linktree-item-btn:hover .linktree-item-arrow{color:#0a0a0a;transform:translate(2px,-2px)}.linktree-empty{text-align:center;color:#737373;background:#fff;border:1px dashed #d4d4d4;border-radius:14px;padding:28px 20px;font-size:13px}.linktree-footer{letter-spacing:.08em;text-transform:uppercase;color:#a3a3a3;margin-top:auto;padding-top:36px;font-size:11.5px}.admin-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-kpi-card{background:#fafafa;border:1px solid #e5e5e5;border-radius:12px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.admin-kpi-label{text-transform:uppercase;letter-spacing:.06em;color:#737373;font-size:11px}.admin-kpi-value{color:#0a0a0a;font-size:20px;font-weight:800}.admin-stat-row{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:12px 14px}.admin-rank-badge{color:#fff;background:#0a0a0a;border-radius:6px;flex-shrink:0;padding:2px 7px;font-size:11px;font-weight:700}.admin-bar-track{background:#f0f0ef;border-radius:999px;width:100%;height:6px;overflow:hidden}.admin-bar-fill{background:#0a0a0a;border-radius:999px;height:100%;transition:width .35s}@media (width<=640px){.topbar-inner{gap:8px;height:60px;padding:0 14px}.brand-lockup{gap:8px}.brand-wordmark{height:19px}.brand-divider{height:14px}.brand-subtext{letter-spacing:.14em;font-size:10.5px}.topbar-actions{gap:6px}.doc-badge,.portal-label-desktop,.upload-label-desktop,.btn-sign-out span{display:none}.upload-label-mobile{display:inline}.btn-upload-trigger{white-space:nowrap;padding:8px 12px;font-size:12.5px}.btn-sign-out{padding:8px 10px}.excel-top-row{padding-left:135px}.linktree-brand-lockup{gap:14px;margin-bottom:11px}.linktree-brand-wordmark{height:38px}.linktree-brand-divider{height:26px}.linktree-brand-subtext{letter-spacing:.18em;font-size:15px}.linktree-subtitle{font-size:13.5px}}
