html{color:#000;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fff;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}body{color:#000;background:#fff;min-width:320px;min-height:100vh;margin:0}*,:before,:after{box-sizing:border-box}button,input,label{font:inherit}::selection{color:#fff;background:#000}:root{--color-black:#000;--color-white:#fff;--color-gray-50:#f9fafb;--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-red-50:#fef2f2;--color-red-600:#dc2626;--color-border-soft:#0000001a;--color-ring-soft:#0000000d;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0003, 0 4px 6px -4px #0003}.app{background:var(--color-white);min-height:100vh;color:var(--color-black);flex-direction:column;display:flex}.app__header{z-index:10;border-bottom:1px solid var(--color-border-soft);-webkit-backdrop-filter:blur(12px);background:#fffc;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.5rem;display:flex;position:sticky;top:0}.app__brand{letter-spacing:-.025em;align-items:center;gap:.5rem;margin:0;font-size:1.25rem;font-weight:700;display:flex}.app__brand-name{white-space:nowrap}.app__brand-tagline{color:var(--color-gray-500);letter-spacing:0;white-space:nowrap;font-size:.875rem;font-weight:500}.app__brand-icon{flex:none;width:1.25rem;height:1.25rem}.app__toolbar{align-items:center;gap:1rem;display:flex}.app__view-toggle{background:var(--color-gray-100);border-radius:.5rem;align-items:center;padding:.25rem;display:flex}.app__view-button,.app__action{appearance:none;font:inherit;border:0}.app__view-button{color:var(--color-gray-500);cursor:pointer;background:0 0;border-radius:.375rem;justify-content:center;align-items:center;padding:.375rem;transition:color .2s,background-color .2s,box-shadow .2s;display:inline-flex}.app__view-button:hover{color:var(--color-black)}.app__view-button--active{background:var(--color-white);color:var(--color-black);box-shadow:var(--shadow-sm), 0 0 0 1px var(--color-ring-soft)}.app__view-icon,.app__action-icon{flex:none;width:1rem;height:1rem}.app__divider{background:var(--color-gray-200);width:1px;height:1.5rem}.app__action{cursor:pointer;border-radius:.5rem;align-items:center;gap:.5rem;padding:.375rem .75rem;font-size:.875rem;font-weight:500;transition:color .2s,background-color .2s,opacity .2s,transform .2s;display:inline-flex}.app__action:disabled,.app__view-button:disabled{cursor:default;opacity:.3}.app__action--remove{color:var(--color-red-600);background:0 0}.app__action--remove:hover:not(:disabled){background:var(--color-red-50)}.app__action--subtle{background:var(--color-gray-100);color:var(--color-gray-700)}.app__action--subtle:hover:not(:disabled){background:var(--color-gray-200);color:var(--color-black)}.app__action--primary{background:var(--color-black);color:var(--color-white);padding-inline:1rem}.app__action--primary:hover:not(:disabled){background:var(--color-gray-800)}.app__action-shortcut{letter-spacing:.01em;background:#fff9;border-radius:9999px;padding:.1rem .4rem;font-size:.6875rem;font-weight:700}.app__main{flex-direction:column;flex:1;width:100%;height:100%;min-height:500px;padding:1.5rem;display:flex;position:relative}.app__content{flex:1;position:relative}.dropzone{border:2px dashed var(--color-gray-200);cursor:pointer;background:#f9fafb80;border-radius:1rem;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:1rem;transition:border-color .2s,background-color .2s;display:flex}.dropzone:focus-visible{outline:3px solid var(--color-black);outline-offset:4px}.dropzone:hover{border-color:var(--color-gray-300);background:var(--color-gray-50)}.dropzone--active{border-color:var(--color-black);background:var(--color-gray-50)}.dropzone__processing{margin-bottom:.5rem;font-size:1.25rem;font-weight:600;animation:1.8s ease-in-out infinite dropzone-pulse}.dropzone__icon{width:3rem;height:3rem;color:var(--color-gray-400);margin-bottom:1rem}.dropzone__icon--active{color:var(--color-black)}.dropzone__title{text-align:center;margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.dropzone__description{color:var(--color-gray-500);text-align:center;margin:0 0 1.5rem;font-size:.875rem}.dropzone__button,.app__fab{color:var(--color-white);background:var(--color-black);cursor:pointer;justify-content:center;align-items:center;font-weight:500;transition:background-color .2s,transform .2s;display:inline-flex}.dropzone__button{border-radius:.5rem;padding:.625rem 1.5rem;font-size:.875rem}.dropzone__button:hover,.app__fab:hover{background:var(--color-gray-800)}.app__pages{--grid-gap:1.5rem;padding-bottom:5rem}.app__pages--grid{gap:var(--grid-gap);grid-template-columns:repeat(auto-fit,100px);justify-content:center;display:grid}.app__pages--list{flex-direction:column;gap:.5rem;width:min(100%,48rem);margin:0 auto;display:flex}.page-card{cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;transition:background-color .2s,border-color .2s,transform .2s;position:relative}.page-card--grid{flex-direction:column;align-items:center;width:100%;display:flex}.page-card--selected{touch-action:none}.page-card--list{background:var(--color-white);border:1px solid #0000;border-radius:.5rem;align-items:center;gap:1rem;padding:.75rem;display:flex}.page-card--list:after{content:"";border:1px solid var(--color-gray-200);border-radius:inherit;pointer-events:none;transition:border .2s;position:absolute;inset:0}.page-card--list:hover:after{border-color:var(--color-gray-300)}.page-card--list.page-card--selected:after{border:3px solid var(--color-black)}.page-card__drop-indicator{z-index:10;pointer-events:none;position:absolute}.page-card__drop-indicator-line{background:var(--color-black);box-shadow:var(--shadow-sm);position:absolute}.page-card__drop-indicator-label{background:var(--color-black);color:var(--color-white);letter-spacing:.01em;text-transform:uppercase;white-space:nowrap;box-shadow:var(--shadow-md);border-radius:9999px;align-items:center;padding:.35rem .65rem;font-size:.6875rem;font-weight:700;display:inline-flex;position:absolute}.page-card__drop-indicator--grid{width:0;top:0;bottom:1.5rem}.page-card__drop-indicator--grid.page-card__drop-indicator--before{left:-.75rem}.page-card__drop-indicator--grid.page-card__drop-indicator--after{right:-.75rem}.page-card__drop-indicator--grid .page-card__drop-indicator-line{width:.25rem;top:0;bottom:0;left:50%;transform:translate(-50%)}.page-card__drop-indicator--grid .page-card__drop-indicator-label{top:0;left:50%;transform:translate(-50%,calc(-100% - .5rem))}.page-card__drop-indicator--list{height:0;left:0;right:0}.page-card__drop-indicator--list.page-card__drop-indicator--before{top:-.25rem}.page-card__drop-indicator--list.page-card__drop-indicator--after{bottom:-.25rem}.page-card__drop-indicator--list .page-card__drop-indicator-line{height:.25rem;top:50%;left:0;right:0;transform:translateY(-50%)}.page-card__drop-indicator--list .page-card__drop-indicator-label{top:50%;left:1rem;transform:translateY(-50%)}.page-card__preview{justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.page-card__preview:after{content:"";border:1px solid var(--color-gray-200);transition:border .2s;position:absolute;inset:0}.page-card__preview{background:var(--color-white);transition:transform .2s}.page-card__preview-placeholder{width:100%;height:100%;color:var(--color-gray-500);background:var(--color-gray-50);text-align:center;justify-content:center;align-items:center;padding:1rem;font-size:.75rem;font-weight:600;display:flex}.page-card__preview--selected{position:relative;transform:scale(.98)}.page-card__preview--selected:after{content:"";border:3px solid var(--color-black);position:absolute;inset:0}.page-card__preview-image{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%}.page-card__preview-hover{pointer-events:none;background:0 0;transition:background-color .2s;position:absolute;inset:0}.page-card--grid:hover .page-card__preview-hover{background:#0000000d}.page-card__label,.page-card__filename,.page-card__meta-title,.page-card__meta-subtitle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.page-card__label{text-align:center;width:100%;color:var(--color-gray-700);margin-top:.5rem;padding:0 .25rem;font-size:.75rem;font-weight:500}.page-card__filename{text-align:center;width:100%;color:var(--color-gray-400);padding:0 .25rem;font-size:.625rem}.page-card__meta{flex:auto;min-width:0}.page-card__meta-title{color:var(--color-gray-900);font-size:.875rem;font-weight:500}.page-card__meta-subtitle{color:var(--color-gray-500);margin-top:.25rem;font-size:.75rem}.app__fab{z-index:10;width:3.5rem;height:3.5rem;box-shadow:var(--shadow-lg);border-radius:9999px;position:fixed;bottom:2rem;right:2rem}.app__fab:hover{transform:scale(1.05)}.app__fab:active{transform:scale(.95)}.app__fab-icon{flex:none;width:1.5rem;height:1.5rem}.overlay-shell{z-index:50;-webkit-backdrop-filter:blur(12px);background:#1118276b;justify-content:center;align-items:flex-start;padding:8vh 1.5rem 1.5rem;display:flex;position:fixed;inset:0}.command-palette,.export-dialog{width:min(100%,40rem);box-shadow:var(--shadow-lg);background:#fffffff7;border-radius:1rem}.command-palette{overflow:hidden}.command-palette__search{border-bottom:1px solid var(--color-gray-200);align-items:center;gap:.75rem;padding:1rem 1.25rem;display:flex}.command-palette__search-icon{width:1.125rem;height:1.125rem;color:var(--color-gray-400);flex:none}.command-palette__input,.export-field__control{border:1px solid var(--color-gray-200);background:var(--color-white);width:100%;color:var(--color-black);font:inherit;border-radius:.75rem}.command-palette__input{border:0;border-radius:0;outline:none;padding:0;font-size:1rem}.command-palette__results{flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.command-palette__item{width:100%;color:var(--color-black);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.875rem;align-items:flex-start;gap:.875rem;padding:.875rem 1rem;transition:background-color .2s,transform .2s,opacity .2s;display:flex}.command-palette__item:hover:not(:disabled){background:var(--color-gray-50);transform:translateY(-1px)}.command-palette__item:disabled{cursor:default;opacity:.45}.command-palette__item-icon{background:var(--color-gray-100);width:2.5rem;height:2.5rem;color:var(--color-black);border-radius:.75rem;flex:none;justify-content:center;align-items:center;display:inline-flex}.command-palette__item-icon-svg{width:1.125rem;height:1.125rem}.command-palette__item-copy{min-width:0}.command-palette__item-title{color:var(--color-gray-900);font-size:.95rem;font-weight:700}.command-palette__item-description{color:var(--color-gray-500);margin-top:.2rem;font-size:.8125rem}.command-palette__empty{background:var(--color-gray-50);color:var(--color-gray-500);text-align:center;border-radius:.875rem;padding:1rem;font-size:.875rem}.export-dialog{padding:1.25rem}.export-dialog__header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.export-dialog__title{color:var(--color-gray-900);margin:0;font-size:1.125rem;font-weight:700}.export-dialog__subtitle{color:var(--color-gray-500);margin:.35rem 0 0;font-size:.875rem}.export-dialog__form{margin-top:1rem}.export-dialog__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.export-field{flex-direction:column;gap:.5rem;display:flex}.export-field+.export-field,.export-dialog__grid+.export-field,.export-field+.export-dialog__meta,.export-dialog__meta+.export-dialog__error,.export-dialog__error+.export-dialog__actions{margin-top:1rem}.export-field__label{letter-spacing:.01em;text-transform:uppercase;color:var(--color-gray-500);font-size:.8125rem;font-weight:700}.export-field__control{outline:none;padding:.75rem .875rem;transition:border-color .2s,box-shadow .2s}.export-field__control:focus{border-color:var(--color-black);box-shadow:0 0 0 3px #11182714}.export-field__hint{color:var(--color-gray-500);font-size:.8125rem}.export-mode-group{flex-wrap:wrap;gap:.5rem;display:inline-flex}.export-mode-group__button{appearance:none;border:1px solid var(--color-gray-200);background:var(--color-white);color:var(--color-gray-700);font:inherit;cursor:pointer;border-radius:9999px;padding:.55rem .9rem;font-size:.875rem;font-weight:600;transition:border-color .2s,background-color .2s,color .2s}.export-mode-group__button--active{border-color:var(--color-black);background:var(--color-black);color:var(--color-white)}.export-dialog__meta{background:var(--color-gray-50);color:var(--color-gray-600);border-radius:.875rem;padding:.85rem .95rem;font-size:.875rem}.export-dialog__error{background:var(--color-red-50);color:var(--color-red-600);border-radius:.875rem;padding:.85rem .95rem;font-size:.875rem;font-weight:600}.export-dialog__actions{justify-content:flex-end;gap:.75rem;display:flex}.preview-modal{z-index:40;justify-content:center;align-items:center;padding:2rem;display:flex;position:fixed;inset:0}.preview-modal__backdrop{-webkit-backdrop-filter:blur(10px);background:#111827c2;position:absolute;inset:0}.preview-modal__panel{z-index:1;width:min(100%,72rem);max-height:calc(100vh - 4rem);box-shadow:var(--shadow-lg);background:#fffffff5;border-radius:1rem;flex-direction:column;gap:1rem;padding:1.25rem;display:flex;position:relative}.preview-modal__close{background:var(--color-gray-100);width:2.5rem;height:2.5rem;color:var(--color-gray-700);cursor:pointer;border:0;border-radius:9999px;justify-content:center;align-items:center;transition:background-color .2s,color .2s,transform .2s;display:inline-flex;position:absolute;top:1rem;right:1rem}.preview-modal__close:hover{background:var(--color-gray-200);color:var(--color-black)}.preview-modal__close:focus-visible{outline:3px solid var(--color-black);outline-offset:3px}.preview-modal__close-icon{width:1.25rem;height:1.25rem}.preview-modal__meta{min-width:0;padding-right:3.5rem}.preview-modal__title,.preview-modal__subtitle{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.preview-modal__title{color:var(--color-gray-900);font-size:1rem;font-weight:700}.preview-modal__subtitle{color:var(--color-gray-500);margin-top:.25rem;font-size:.875rem}.preview-modal__viewport{background:linear-gradient(#f3f4f6f2,#e5e7ebf2);border-radius:.75rem;flex:auto;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:auto}.preview-modal__image{object-fit:contain;max-width:100%;max-height:calc(100vh - 12rem);box-shadow:var(--shadow-lg);display:block}.preview-modal__loading{color:var(--color-gray-600);padding:2rem;font-size:1rem;font-weight:600}.preview-modal__status{color:var(--color-white);background:#111827d1;border-radius:9999px;padding:.45rem .7rem;font-size:.75rem;font-weight:600;position:absolute;bottom:1rem;right:1rem}.app__file-input{display:none}@keyframes dropzone-pulse{0%,to{opacity:1}50%{opacity:.5}}@media (width<=768px){.app__header,.app__main{padding-inline:1rem}.app__header{flex-direction:column;align-items:flex-start}.app__brand-tagline{display:none}.app__toolbar{flex-wrap:wrap;gap:.75rem}.overlay-shell,.export-dialog{padding:1rem}.export-dialog__grid{grid-template-columns:1fr}.export-dialog__actions{flex-direction:column-reverse}.export-dialog__actions .app__action{justify-content:center;width:100%}.page-card__drop-indicator--grid .page-card__drop-indicator-label{left:0;transform:translateY(calc(-100% - .5rem))}.app__fab{bottom:1.5rem;right:1.5rem}.preview-modal{padding:1rem}.preview-modal__panel{max-height:calc(100vh - 2rem);padding:1rem}.preview-modal__image{max-height:calc(100vh - 10rem)}}
