:root{--ink:#1d2922;--muted:#718078;--paper:#f7f6f1;--card:#fff;--line:#e6e6df;--primary:#176b50;--primary-2:#dceee5;--amber:#e89d38;--danger:#bc4c4c;--shadow:0 14px 38px rgba(37,52,44,.08);--radius:18px;--font:Inter,Pretendard,"Apple SD Gothic Neo","Noto Sans KR",sans-serif}
*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);font-family:var(--font);scroll-behavior:smooth}body{margin:0;min-height:100vh}button,input,textarea,select{font:inherit}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{display:none}.bottom-nav{position:fixed;z-index:20;bottom:0;left:0;right:0;height:74px;padding:8px 22px calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:space-around;background:rgba(255,255,255,.92);border-top:1px solid var(--line);backdrop-filter:blur(18px)}.bottom-nav a{color:var(--muted);text-decoration:none;display:grid;place-items:center;gap:2px;min-width:72px;font-size:23px}.bottom-nav small{font-size:11px;font-weight:700}.bottom-nav a.active{color:var(--primary)}.bottom-nav .add-tab span{display:grid;place-items:center;width:42px;height:42px;margin-top:-20px;border-radius:15px;background:var(--primary);color:white;box-shadow:0 8px 20px rgba(23,107,80,.3)}main{min-height:100vh;padding:0 18px 105px}.page{max-width:1180px;margin:auto;animation:enter .28s ease}@keyframes enter{from{opacity:0;transform:translateY(6px)}}.topbar{padding:26px 0 18px;display:flex;align-items:center;justify-content:space-between}.eyebrow{margin:0 0 5px;color:var(--primary);font-size:12px;font-weight:800;letter-spacing:.09em}.topbar h1,.hero h1{margin:0;font-size:29px;line-height:1.2;letter-spacing:-.04em}.icon-btn,.ghost-btn{border:1px solid var(--line);background:var(--card);color:var(--ink);border-radius:13px;min-height:44px;padding:0 14px}.avatar{width:44px;padding:0;border-radius:50%;background:#e6ded2}.search-wrap{position:relative;margin-bottom:18px}.search-wrap .glass{position:absolute;left:17px;top:15px;color:var(--muted)}.search-input{width:100%;height:52px;border:1px solid transparent;background:var(--card);border-radius:16px;padding:0 45px;outline:none;box-shadow:0 5px 22px rgba(30,43,36,.05)}.search-input:focus{border-color:#87ae9f;box-shadow:0 0 0 4px rgba(23,107,80,.08)}.clear-search{position:absolute;right:10px;top:8px;border:0;background:none;width:36px;height:36px;color:var(--muted)}.chips{display:flex;gap:8px;overflow:auto;padding:1px 0 18px;scrollbar-width:none}.chip{white-space:nowrap;border:1px solid var(--line);background:transparent;color:var(--muted);height:36px;padding:0 14px;border-radius:20px;font-size:13px;font-weight:700}.chip.active{background:var(--ink);color:white;border-color:var(--ink)}.section-head{display:flex;align-items:end;justify-content:space-between;margin:10px 0 14px}.section-head h2{font-size:18px;margin:0}.section-head span{font-size:12px;color:var(--muted)}.doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.doc-card{position:relative;background:var(--card);border-radius:var(--radius);overflow:hidden;box-shadow:0 3px 16px rgba(37,52,44,.055);cursor:pointer;transition:.2s}.doc-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.doc-thumb{aspect-ratio:1.08;background:#eee9df;display:grid;place-items:center;overflow:hidden}.doc-thumb img{width:100%;height:100%;object-fit:cover}.paper-preview{width:64%;height:78%;background:white;box-shadow:0 5px 15px #a8a49a55;padding:12px 8px;transform:rotate(-2deg)}.paper-preview i{display:block;height:3px;background:#d6d3ca;margin:6px 0;border-radius:2px}.paper-preview i:nth-child(2n){width:72%}.doc-info{padding:12px}.doc-info h3{font-size:14px;margin:0 0 7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--muted)}.badge{display:inline-flex;align-items:center;height:23px;padding:0 8px;border-radius:8px;font-size:10px;font-weight:800;background:var(--badge,#e5eee9);color:var(--badge-text,#2e7059)}mark{background:#ffe69b;border-radius:3px;padding:0 2px}.empty{grid-column:1/-1;text-align:center;padding:55px 20px;color:var(--muted)}.empty-icon{font-size:42px;opacity:.7}.primary-btn{border:0;background:var(--primary);color:white;min-height:48px;padding:0 20px;border-radius:14px;font-weight:800;box-shadow:0 7px 18px rgba(23,107,80,.2)}.primary-btn:disabled{opacity:.45;cursor:not-allowed}.hero{text-align:center;padding:42px 5px 25px}.hero p{color:var(--muted);font-size:14px;line-height:1.6}.upload-zone{border:1.5px dashed #a6b8af;border-radius:24px;background:linear-gradient(150deg,#fff,#f1f7f3);padding:42px 24px;text-align:center;transition:.2s}.upload-zone.drag{border-color:var(--primary);background:var(--primary-2)}.upload-icon{margin:auto auto 17px;width:65px;height:65px;border-radius:20px;background:var(--primary-2);color:var(--primary);display:grid;place-items:center;font-size:30px}.upload-zone h2{font-size:19px;margin:0 0 8px}.upload-zone p{color:var(--muted);font-size:13px}.upload-actions{display:grid;gap:10px;max-width:340px;margin:22px auto 0}.upload-actions label{display:grid;place-items:center}.outline-btn{height:48px;border:1px solid var(--line);background:white;border-radius:14px;font-weight:700;color:var(--ink)}.privacy-note{display:flex;gap:11px;margin:22px auto;padding:14px 16px;max-width:520px;background:#f0ece2;border-radius:14px;color:#635d50;font-size:12px;line-height:1.5;text-align:left}.review-layout{display:grid;gap:16px}.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:16px}.image-stage{position:relative;min-height:320px;background:#252a27;border-radius:15px;overflow:hidden;display:grid;place-items:center}.image-stage img{max-width:100%;max-height:65vh;display:block}.ocr-box{position:absolute;border:2px solid #f0b64e;background:#ffd56a2b;border-radius:3px;pointer-events:none}.progress-card{position:absolute;inset:0;background:#fffef9eF;display:grid;place-content:center;text-align:center;z-index:3}.spinner{width:42px;height:42px;border:4px solid #dfe8e3;border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:auto}@keyframes spin{to{transform:rotate(360deg)}}.progress-card strong{margin-top:14px}.progress-card small{margin-top:6px;color:var(--muted)}.form-grid{display:grid;gap:13px}.field{display:grid;gap:7px}.field label{font-size:12px;font-weight:800;color:#55645c}.field input,.field textarea,.field select{width:100%;border:1px solid var(--line);border-radius:12px;background:#fbfbf8;color:var(--ink);padding:12px;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:#78a593;box-shadow:0 0 0 3px #dceee5}.field textarea{min-height:210px;resize:vertical;line-height:1.65}.meta-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.review-actions{position:sticky;bottom:84px;display:flex;gap:9px;padding-top:14px;background:linear-gradient(transparent,var(--paper) 25%)}.review-actions .primary-btn{flex:1}.back-btn{background:transparent;border:0;color:var(--muted);font-weight:800}.detail-image{background:#292d2a;border-radius:20px;overflow:hidden;max-height:520px;text-align:center}.detail-image img{max-width:100%;max-height:520px}.detail-card{margin-top:15px}.detail-card h2{margin:4px 0 8px}.detail-card pre{white-space:pre-wrap;font:inherit;line-height:1.7;color:#46534c}.settings-list{display:grid;gap:12px}.setting-row{background:white;border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;justify-content:space-between;align-items:center}.setting-row strong{display:block;font-size:14px}.setting-row small{color:var(--muted)}.toast{position:fixed;z-index:99;left:50%;bottom:92px;transform:translate(-50%,20px);background:#1d2922;color:#fff;padding:12px 18px;border-radius:12px;font-size:13px;opacity:0;pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:700px){.doc-grid{grid-template-columns:repeat(3,1fr)}main{padding-left:28px;padding-right:28px}.review-layout{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr)}.hero{padding-top:60px}}
@media(min-width:1024px){.app-shell{display:grid;grid-template-columns:240px 1fr}.sidebar{display:flex;position:sticky;top:0;height:100vh;padding:30px 20px;flex-direction:column;border-right:1px solid var(--line);background:#fbfaf6}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-size:21px;font-weight:900}.brand-mark{display:grid;place-items:center;width:34px;height:34px;color:white;background:var(--primary);border-radius:11px}.side-nav{display:grid;gap:7px;margin-top:38px}.side-nav a{height:48px;padding:0 14px;display:flex;align-items:center;gap:13px;border-radius:13px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:750}.side-nav a.active{background:var(--primary-2);color:var(--primary)}.side-nav span{font-size:19px}.storage-card{margin-top:auto;padding:17px;background:#f0ece2;border-radius:15px;display:grid;gap:5px}.storage-card span,.storage-card small{font-size:11px;color:var(--muted)}.storage-card strong{font-size:14px}.bottom-nav{display:none}main{padding:0 38px 55px}.topbar{padding-top:38px}.doc-grid{grid-template-columns:repeat(4,1fr)}.review-actions{bottom:0}}
@media(prefers-color-scheme:dark){:root{--ink:#edf3ef;--muted:#96a59d;--paper:#121714;--card:#1c231f;--line:#303a34;--primary:#60c59b;--primary-2:#203c30}.sidebar{background:#171d19}.search-input,.outline-btn,.icon-btn,.ghost-btn,.setting-row{background:var(--card);color:var(--ink)}.upload-zone{background:linear-gradient(150deg,#1c231f,#17231d)}.privacy-note,.storage-card{background:#24251f;color:#c8c4b8}.field input,.field textarea,.field select{background:#151b17;color:var(--ink)}.review-actions{background:linear-gradient(transparent,var(--paper) 25%)}.paper-preview{background:#eae7de}}
