:root{color:#202224;background:#f5f4f0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink: #202224;--paper: #f5f4f0;--panel: #dfe4e7;--panel-dark: #aeb8bf;--line: #202224;--muted: #59636b;--violet: #d69ad4;--cyan: #8fcbd0;--green: #a8d6c1;--red: #e3a2ac;--yellow: #e7cf88;--mono: "SF Mono", "IBM Plex Mono", ui-monospace, Menlo, Monaco, Consolas, monospace}*{box-sizing:border-box}html{min-width:320px;min-height:100%;overflow-x:hidden}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;background:linear-gradient(90deg,rgba(32,34,36,.04) 1px,transparent 1px),linear-gradient(rgba(32,34,36,.04) 1px,transparent 1px),var(--paper);background-size:18px 18px}button,input,select{font:inherit}button,select,summary,label[for]{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.42}button,a,input,select,summary{outline-offset:3px}:focus-visible{outline:3px solid #0b6b75}a{color:inherit}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.eyebrow,.platform-label,.local-badge,.mini-stat,.tabs,.progress-row,.sort-control,.card-console,.handle,.source-date,.relationship-map,.profile-link,.decision-badge,.list-row a,.list-summary,.preview-stats,.recognized-files,.interaction-hint{font-family:var(--mono)}.primary-action,.secondary-action,.demo-action,.danger-action,.header-button,.icon-button,.tab,.decision-action,.undo-action,.segmented button,.row-actions button,.load-more{border:2px solid var(--line);border-radius:0;font-weight:760}.primary-action,.secondary-action,.demo-action,.danger-action{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:9px;padding:0 18px}.primary-action{background:var(--ink);color:var(--paper)}.primary-action.compact{width:auto}.secondary-action,.demo-action{background:var(--panel);color:var(--ink)}.danger-action{background:var(--red);color:var(--ink)}.import-shell{display:grid;min-height:100vh;padding:24px;place-items:center}.import-panel{width:min(100%,660px);padding:clamp(22px,5vw,38px);border:2px solid var(--line);background:var(--paper);box-shadow:7px 7px 0 var(--ink)}.local-badge{display:inline-flex;min-height:30px;align-items:center;gap:7px;padding:0 10px;border:1px solid var(--line);background:var(--green);font-size:.72rem;font-weight:800;text-transform:uppercase}.import-panel>h1{margin:22px 0 0;font-family:var(--mono);font-size:clamp(2.8rem,11vw,5.2rem);font-weight:900;letter-spacing:-.09em;line-height:.88}.import-panel>h1.preview-title{margin-top:8px;font-family:inherit;font-size:clamp(2.1rem,8vw,3.6rem);letter-spacing:-.055em}.lede{max-width:52ch;margin:18px 0 22px;color:#353a3e;font-size:1rem;line-height:1.55}.privacy-note{display:grid;gap:4px;margin-bottom:18px;padding:13px 15px;border-left:6px solid var(--cyan);background:#e9eeee}.privacy-note span{color:var(--muted);font-size:.9rem}.file-guide{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px}.guide-card{display:flex;min-width:0;align-items:center;gap:10px;padding:12px;border:2px solid var(--line);background:#edf0ef}.guide-card div,.guide-card strong,.guide-card span{display:block;min-width:0}.guide-card strong{overflow-wrap:anywhere;font-family:var(--mono);font-size:.86rem}.guide-card span{margin-top:3px;color:var(--muted);font-size:.82rem}.steps{display:grid;gap:10px;margin:0 0 14px;padding:0;list-style:none}.steps li{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start}.steps li>span{display:grid;width:36px;height:36px;border:2px solid var(--line);background:var(--panel);font-family:var(--mono);font-weight:900;place-items:center}.steps p{margin:5px 0 0;line-height:1.45}.x-help{margin:14px 0;border-block:1px solid #aeb5b8;padding:10px 0}.x-help summary{font-weight:750}.x-help p{margin:9px 0 2px;color:var(--muted);font-size:.9rem}.drop-zone{display:grid;min-height:205px;align-content:center;justify-items:center;gap:8px;padding:20px;border:2px dashed var(--line);background:#dfe4e79e;text-align:center;transition:background .16s ease,transform .16s ease}.drop-zone.dragging{background:var(--cyan);transform:translate(-2px,-2px)}.drop-zone>span,.drop-zone>small{color:var(--muted)}.drop-zone>small{margin-top:3px;line-height:1.35}.demo-action{width:100%;margin-top:10px}.error-message{margin:14px 0 0;padding:12px;border:2px solid #8f2538;background:#ffe6ea;color:#7c1d2e;font-weight:700;line-height:1.4}.preview-panel>.eyebrow{margin:0}.platform-check,.import-ok,.preview-disclaimer{display:flex;align-items:center;gap:8px}.platform-check{width:fit-content;padding:8px 10px;border:2px solid var(--line);background:var(--green);font-weight:800}.preview-stats{display:grid;grid-template-columns:repeat(3,1fr);margin:16px 0;border:2px solid var(--line)}.preview-stats>div{display:grid;min-width:0;gap:5px;padding:14px;border-right:2px solid var(--line)}.preview-stats>div:last-child{border-right:0}.preview-stats .accent{background:var(--cyan)}.preview-stats span{color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.preview-stats strong{font-size:clamp(1.5rem,5vw,2.1rem)}.recognized-files{display:grid;gap:8px}.recognized-files>div{display:grid;grid-template-columns:110px 1fr;gap:10px;padding:10px 12px;border:1px solid var(--line);background:#edf0ef;font-size:.78rem}.recognized-files span{min-width:0;overflow-wrap:anywhere}.import-warnings{margin-top:14px;padding:12px 14px;border:2px solid var(--line);background:#f4e8be}.import-warnings ul{margin:8px 0 0;padding-left:20px}.import-warnings li+li{margin-top:5px}.import-ok{margin:14px 0 0;color:#176044;font-weight:700}.preview-actions{display:grid;grid-template-columns:auto 1fr;gap:10px;margin-top:18px}.preview-disclaimer{margin:13px 0 0;color:var(--muted);font-size:.86rem}.app-shell{display:flex;width:min(100%,680px);min-height:100vh;flex-direction:column;align-items:center;margin:0 auto;padding:18px}.app-header{display:flex;width:100%;min-height:70px;align-items:center;justify-content:space-between;gap:14px;padding:9px 10px 9px 14px;border:2px solid var(--line);background:var(--paper);box-shadow:5px 5px #20222433}.brand-lockup{min-width:0}.eyebrow{margin:0 0 5px;font-size:.76rem;font-weight:900;text-transform:uppercase}.platform-label{margin:0;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.header-actions{display:flex;align-items:stretch;gap:8px}.mini-stat{display:grid;min-width:72px;align-content:center;padding:5px 8px;border:2px solid var(--line);background:var(--panel);text-align:center}.mini-stat strong,.mini-stat span{display:block}.mini-stat strong{font-size:1rem}.mini-stat span{color:var(--muted);font-size:.6rem;font-weight:800;text-transform:uppercase}.header-button,.icon-button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;background:var(--paper);color:var(--ink)}.header-button{padding:0 11px;font-size:.78rem}.icon-button{width:44px;flex:0 0 44px}.icon-button.danger{color:#991f35}.tabs{display:grid;width:100%;grid-template-columns:1fr 1fr;margin:10px 0 14px;border:2px solid var(--line);background:var(--paper)}.tab{display:flex;min-height:46px;align-items:center;justify-content:center;gap:8px;border:0;border-right:2px solid var(--line);background:#edf0ef;color:var(--ink)}.tab:last-child{border-right:0}.tab.active{background:var(--panel-dark);box-shadow:inset 0 -5px 0 var(--cyan)}.review-view,.filters-view{display:grid;width:100%;animation:view-in .18s ease both}.review-view{gap:11px;justify-items:center}.review-toolbar{display:flex;width:min(100%,520px);align-items:end;justify-content:space-between;gap:16px}.review-toolbar>p{margin:0 0 9px;color:var(--muted);font-size:.82rem}.sort-control{display:grid;gap:5px;color:var(--muted);font-size:.68rem;font-weight:800;text-transform:uppercase}.sort-control select{min-height:42px;padding:0 34px 0 11px;border:2px solid var(--line);border-radius:0;background:#edf0ef;color:var(--ink);font-family:inherit;font-weight:800}.progress-row{display:grid;width:min(100%,520px);grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:var(--muted);font-size:.7rem;font-weight:800}.progress-track{height:13px;overflow:hidden;border:2px solid var(--line);background:#edf0ef}.progress-track>div{height:100%;background:repeating-linear-gradient(90deg,transparent 0 8px,rgba(32,34,36,.24) 8px 10px),var(--cyan);transition:width .22s ease}.deck-zone{position:relative;display:grid;width:min(100%,370px);min-height:360px;touch-action:pan-y}.account-card{position:relative;z-index:2;display:grid;min-height:360px;align-content:center;justify-items:center;gap:13px;padding:46px 18px 19px;border:2px solid var(--line);background:linear-gradient(180deg,var(--panel-dark) 0 34px,transparent 34px),linear-gradient(90deg,rgba(32,34,36,.065) 1px,transparent 1px),var(--panel);background-size:auto,10px 10px,auto;box-shadow:6px 6px #20222438;text-align:center;-webkit-user-select:none;user-select:none;animation:card-in .2s ease both;transition:transform .1s ease}.account-card.dragging{transition:none}.account-card.swiping.keep{animation:swipe-keep .23s cubic-bezier(.22,.78,.18,1) forwards}.account-card.swiping.unfollow{animation:swipe-unfollow .23s cubic-bezier(.22,.78,.18,1) forwards}.card-console{position:absolute;inset:0 0 auto;display:flex;height:34px;align-items:center;justify-content:space-between;padding:0 10px;border-bottom:2px solid var(--line);font-size:.63rem;font-weight:850;text-transform:uppercase}.avatar{display:grid;width:66px;height:66px;border:2px solid var(--line);background:linear-gradient(135deg,transparent 0 47%,rgba(245,244,240,.5) 47% 53%,transparent 53%),var(--ink);color:var(--paper);font-family:var(--mono);font-size:1.8rem;font-weight:900;place-items:center}.avatar.done{background:var(--green);color:var(--ink)}.identity-block{display:grid;min-width:0;justify-items:center;gap:6px}.handle{max-width:300px;margin:0;overflow:hidden;font-size:clamp(1rem,4vw,1.18rem);font-weight:900;text-overflow:ellipsis;white-space:nowrap}.source-date{margin:0;color:var(--muted);font-size:.66rem;text-transform:uppercase}.relationship-map{position:relative;display:grid;grid-template-columns:auto 78px auto;align-items:center;gap:8px;padding:10px 12px 24px;border:2px solid var(--line);background:var(--paper)}.relationship-node{display:grid;min-width:58px;min-height:35px;align-items:center;border:1px solid var(--line);background:var(--panel);font-size:.7rem;font-weight:850;text-transform:uppercase}.relationship-arrow{display:grid;grid-template-columns:1fr auto;align-items:center;color:#176044}.relationship-arrow small{font-size:.58rem;font-weight:900;text-transform:uppercase}.missing-return{position:absolute;right:22px;bottom:5px;display:flex;align-items:center;gap:3px;color:#9a2036;font-size:.58rem;font-weight:900;text-transform:uppercase}.profile-link{display:inline-flex;min-height:34px;align-items:center;gap:7px;padding:0 10px;border:2px solid var(--line);background:var(--paper);font-size:.67rem;font-weight:850;text-decoration:none;text-transform:uppercase}.drag-feedback{position:absolute;inset:15px -11px auto;z-index:1;display:flex;justify-content:space-between;font-family:var(--mono);font-size:.68rem;font-weight:900;text-transform:uppercase}.drag-feedback span{padding:6px 8px;border:2px solid var(--line);opacity:0;transition:opacity .1s ease}.drag-reject{background:var(--red)}.drag-accept{background:var(--green)}.deck-zone.drag-unfollow .drag-reject,.deck-zone.drag-keep .drag-accept{opacity:1}.decision-bar{display:grid;width:min(100%,520px);grid-template-columns:1fr auto 1fr;align-items:stretch;gap:8px}.decision-action,.undo-action{display:flex;min-height:58px;align-items:center;justify-content:center;gap:9px;padding:7px 11px;background:var(--paper)}.decision-action span{display:grid;gap:1px;text-align:left}.decision-action strong{font-size:.84rem}.decision-action small{color:var(--muted);font-size:.65rem;line-height:1.15}.decision-action.reject{color:#951d33}.decision-action.accept{color:#145f42}.undo-action{min-width:76px;flex-direction:column;gap:2px;color:var(--muted);font-size:.67rem}.interaction-hint{margin:0;color:var(--muted);font-size:.67rem;font-weight:800;text-transform:uppercase}.touch-hint{display:none}.finished{padding-inline:30px}.finished>.eyebrow{margin:0}.finished h2{margin:-5px 0 0;font-size:1.45rem}.finished>p:not(.eyebrow){max-width:34ch;margin:0;color:#3b4145;line-height:1.45}.filters-view{gap:14px}.filter-toolbar{display:grid;gap:10px}.search-field{display:flex;min-height:48px;align-items:center;gap:10px;padding:0 13px;border:2px solid var(--line);background:var(--paper)}.search-field:focus-within{box-shadow:inset 0 -4px 0 var(--cyan)}.search-field input{width:100%;min-width:0;border:0;outline:0;background:transparent;font-size:1rem}.segmented{display:grid;grid-template-columns:repeat(4,1fr);border:2px solid var(--line)}.segmented button{display:flex;min-width:0;min-height:48px;align-items:center;justify-content:center;gap:7px;border:0;border-right:2px solid var(--line);background:#edf0ef;font-size:.78rem}.segmented button:last-child{border-right:0}.segmented button strong{display:grid;min-width:22px;height:22px;padding:0 4px;align-items:center;background:var(--paper);font-family:var(--mono);font-size:.67rem}.segmented button.active{background:var(--panel-dark);box-shadow:inset 0 -4px 0 var(--cyan)}.list-summary{color:var(--muted);font-size:.76rem}.account-list{display:grid;gap:8px}.list-row{display:grid;min-height:78px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:2px solid var(--line);background:var(--paper);content-visibility:auto;contain-intrinsic-size:auto 82px}.list-row.keep{background:linear-gradient(90deg,var(--green),var(--paper) 38%)}.list-row.unfollow{background:linear-gradient(90deg,var(--red),var(--paper) 38%)}.list-identity{min-width:0}.list-row a{display:inline-flex;max-width:100%;align-items:center;gap:5px;overflow-wrap:anywhere;font-size:.84rem;font-weight:900;text-decoration:none}.decision-badge{display:table;min-height:24px;margin-top:7px;padding:4px 7px;border:1px solid var(--line);background:#ece9e1;font-size:.62rem;font-weight:800}.decision-badge.keep{background:#ddf3e8;color:#145f42}.decision-badge.unfollow{background:#fbe0e5;color:#951d33}.row-actions{display:flex;align-items:stretch;gap:5px}.row-actions button{min-height:44px;padding:0 10px;background:var(--panel);color:var(--ink);font-size:.72rem}.row-actions button[aria-pressed=true]{box-shadow:inset 0 -5px 0 var(--cyan)}.row-actions .mark-unfollow{color:#951d33}.row-actions .mark-keep{color:#145f42}.load-more{min-height:48px;background:var(--panel)}.empty-state{display:grid;min-height:260px;align-content:center;justify-items:center;gap:8px;padding:30px;border:2px dashed var(--line);background:#f5f4f0d1;text-align:center}.empty-state h2,.empty-state p{margin:0}.empty-state p{max-width:38ch;color:var(--muted);line-height:1.45}.reset-dialog{width:min(calc(100% - 32px),460px);padding:24px;border:2px solid var(--line);border-radius:0;background:var(--paper);box-shadow:7px 7px 0 var(--ink);color:var(--ink)}.reset-dialog::backdrop{background:#2022249e}.reset-dialog h2{margin:8px 0;font-size:1.55rem}.reset-dialog>p:not(.eyebrow){margin:0;color:#3c4144;line-height:1.5}.dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:20px}@media(hover:hover){.primary-action:hover,.header-button:hover,.icon-button:hover,.decision-action:hover,.undo-action:hover,.row-actions button:hover,.load-more:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #20222440}.decision-action.reject:hover,.row-actions .mark-unfollow:hover{background:#f7d6dc}.decision-action.accept:hover,.row-actions .mark-keep:hover{background:#d9f0e4}}@media(max-width:640px){.import-shell{padding:14px}.import-panel{padding:20px;box-shadow:5px 5px 0 var(--ink)}.file-guide{grid-template-columns:1fr}.preview-stats{grid-template-columns:1fr 1fr 1fr}.preview-stats>div{padding:10px 8px}.recognized-files>div{grid-template-columns:1fr;gap:4px}.preview-actions{grid-template-columns:1fr}.app-shell{width:100%;padding:10px}.app-header{min-height:66px;padding-left:11px}.header-actions{gap:6px}.header-button{width:44px;padding:0}.header-button>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}.mini-stat{min-width:64px}.tabs{margin-block:8px 10px}.review-toolbar{align-items:end}.review-toolbar>p{font-size:.75rem}.deck-zone,.account-card{min-height:350px}.deck-zone{width:min(100%,350px)}.account-card{padding:44px 14px 15px}.decision-bar{position:sticky;bottom:8px;z-index:5;width:100%;padding:6px;border:2px solid var(--line);background:#f5f4f0f5;box-shadow:4px 4px #20222433}.decision-action,.undo-action{min-height:58px;border-width:1px}.decision-action span{text-align:center}.decision-action small{display:none}.decision-action{flex-direction:column;gap:1px}.undo-action{min-width:68px}.filter-toolbar{gap:8px}.segmented{grid-template-columns:1fr 1fr}.segmented button:nth-child(2){border-right:0}.segmented button:nth-child(-n+2){border-bottom:2px solid var(--line)}.list-row{grid-template-columns:1fr}.row-actions{display:grid;grid-template-columns:repeat(3,1fr)}.row-actions button{padding-inline:5px}}@media(max-width:380px){.brand-lockup .platform-label{max-width:92px;line-height:1.3}.header-actions{gap:4px}.mini-stat{min-width:58px;padding-inline:5px}.relationship-map{grid-template-columns:auto 66px auto;gap:5px;padding-inline:8px}.relationship-node{min-width:52px}}@media(pointer:coarse){.desktop-hint{display:none}.touch-hint{display:inline}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@keyframes view-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes card-in{0%{opacity:0;transform:scale(.985) translateY(5px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes swipe-keep{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(440px) rotate(12deg)}}@keyframes swipe-unfollow{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(-440px) rotate(-12deg)}}
