/* Paper-drawn library: visual texture only; catalogue data remains authoritative. */
:root{--paper:oklch(97% .014 85);--paper-deep:oklch(93.5% .025 78);--paper-line:oklch(77% .04 72);--ink-soft:oklch(38% .025 67);--paper-shadow:oklch(43% .03 65 / .13)}
body{background-color:var(--paper);background-image:url('/assets/paper-grain.svg');color:var(--ink)}
header,nav{background-color:oklch(94% .027 78);background-image:url('/assets/paper-grain.svg')}
header h1{letter-spacing:-.04em}header h1 img{width:48px;height:48px;margin-left:-3px}header p{margin-left:52px;max-width:160px}
nav{border-right:1px solid var(--paper-line)}nav button,nav a button{border:1px solid transparent;border-radius:6px 11px 7px 10px;color:var(--ink-soft)}nav button:not(.secondary){border-color:oklch(78% .035 74);background:oklch(89% .04 78);color:var(--ink);box-shadow:2px 3px 0 oklch(60% .03 70 / .15)}
.library-heading{padding-bottom:4px}.library-heading h2{font-size:2rem;letter-spacing:-.045em}.library-heading .eyebrow{color:oklch(48% .04 64)}
.shelf-toolbar{background:oklch(98% .01 84 / .8);border:1px solid var(--paper-line);border-radius:10px 6px 11px 7px;padding:12px;box-shadow:3px 4px 0 var(--paper-shadow)}
.search-field{min-width:210px;border-color:oklch(81% .025 75);background:oklch(99% .007 86);border-radius:7px}.shelf-toolbar select{border-color:oklch(81% .025 75);border-radius:7px;background-color:oklch(99% .007 86)}.view-switch{background:oklch(92% .025 78);border-radius:8px}.view-switch button[aria-pressed=true]{background:oklch(99% .007 86);box-shadow:1px 2px 0 var(--paper-shadow)}
.collection-meta{margin:36px 0 22px;align-items:end}.collection-meta h3{font-size:1.15rem}.shelf-kicker{margin:0 0 5px;font-size:.63rem;font-weight:700;letter-spacing:.12em;color:oklch(50% .035 69)}
.shelf{grid-template-columns:repeat(auto-fill,minmax(156px,1fr));gap:38px 25px}.shelf-item{position:relative;min-width:0}
.book-cover{isolation:isolate;aspect-ratio:3/4.05;padding:21px 18px 17px;border:1.5px solid oklch(50% .035 65);border-radius:3px 9px 6px 3px;background-color:oklch(89% .045 82);background-image:url('/assets/paper-grain.svg');box-shadow:inset 7px 0 0 oklch(35% .035 62 / .10),3px 4px 0 oklch(75% .03 72),5px 7px 0 oklch(42% .035 65 / .16);transform:rotate(-.6deg);transition:transform .2s ease,box-shadow .2s ease;color:oklch(27% .025 60)}
.book-cover.cover-1{background-color:oklch(88% .03 135);border-color:oklch(51% .03 124);transform:rotate(.5deg)}.book-cover.cover-2{background-color:oklch(87% .05 48);border-color:oklch(52% .04 55);transform:rotate(-.3deg)}.book-cover.cover-3{background-color:oklch(90% .02 245);border-color:oklch(54% .025 230);transform:rotate(.35deg)}
.book-cover:hover:not(:disabled){background-image:url('/assets/paper-grain.svg');background-color:oklch(92% .035 80);color:oklch(25% .02 60);transform:translateY(-3px) rotate(0);box-shadow:inset 7px 0 0 oklch(35% .035 62 / .10),3px 5px 0 oklch(75% .03 72),6px 10px 0 oklch(42% .035 65 / .13)}
.book-cover:before{content:'';position:absolute;inset:9px 9px 9px 13px;border:1px solid oklch(48% .035 65 / .36);border-radius:3px 6px 3px 5px;pointer-events:none}.book-cover:after{width:34px;height:2px;background:currentColor;opacity:.45;margin-top:14px;transform:rotate(-1deg)}
.book-type{padding:3px 5px;border:1px solid oklch(45% .03 65 / .5);border-radius:2px 4px 2px 4px;letter-spacing:.11em}.book-title{margin-top:25px;font-size:1rem;line-height:1.3}.book-author{font-size:.72rem}.book-mark{font-size:.51rem;letter-spacing:.09em;margin-top:auto}.book-details{margin-top:16px}.book-details strong{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.book-details small{color:oklch(47% .025 68)}.book-actions{gap:5px}.book-actions button{padding:7px 9px;min-height:34px;border-color:oklch(81% .03 75);background:oklch(98% .01 85);border-radius:5px 7px 5px 8px}
.shelf-empty{position:relative;padding:64px 22px;background-color:oklch(96% .02 82);background-image:url('/assets/paper-grain.svg');border:1px dashed oklch(72% .035 71);border-radius:9px 13px 8px 11px}.empty-mark{display:block;font:2rem Georgia,serif;color:oklch(55% .06 65);margin-bottom:10px}.shelf-empty strong{display:block}.library-tools{border-top-color:var(--paper-line)}
.reader-bar{background-color:oklch(97% .015 83);background-image:url('/assets/paper-grain.svg');border-bottom-color:var(--paper-line)}.reader{background:var(--paper)}
@media(max-width:820px){header{background-image:url('/assets/paper-grain.svg')}header h1 img{width:40px;height:40px}nav{border-right:0;border-bottom-color:var(--paper-line)}.library-heading h2{font-size:1.75rem}.shelf{grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:30px 18px}.book-cover{padding:16px 14px}.book-title{font-size:.9rem}}
@media(max-width:490px){.shelf-toolbar{gap:8px}.shelf-toolbar select{min-width:0;flex:1 1 130px}.shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-meta{margin-top:29px}.book-actions button{font-size:.68rem;padding:7px}.library-heading h2{font-size:1.6rem}}
@media(prefers-reduced-motion:reduce){.book-cover{transition:none}}
/* Estados e controles acessíveis para busca e leitura. */
.active-filters{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}.active-filters button{font-size:.75rem;padding:6px 9px;min-height:34px;border-color:var(--paper-line);background:var(--paper);border-radius:6px}
.shelf-state{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 18px;color:var(--ink-soft);font-size:.83rem}.shelf-state button{font-size:.75rem;padding:7px 10px}.book-status{font-weight:650;color:#70513f!important}.reader-download{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--paper-line);border-radius:8px;padding:10px 13px;background:var(--paper);color:var(--ink);font-size:.8rem;font-weight:600;text-decoration:none;white-space:nowrap}.reader-download:hover{background:var(--paper-deep)}.reader-download:focus-visible{outline:3px solid #7b7063;outline-offset:3px}.shelf[aria-busy=true]{opacity:.7}.book-actions button{min-height:38px}
@media(max-width:700px){.reader-download{order:1}.reader-heading{order:0}.reader-nav{order:2}.shelf-state{line-height:1.45}}
@media(prefers-reduced-motion:reduce){.shelf[aria-busy=true]{opacity:1}}
/* Navigation icon treatment follows the kognitio interface. */
nav button[data-view]{display:flex;align-items:center;gap:10px}
.nav-icon{width:17px;height:17px;display:inline-flex;flex:0 0 17px;align-items:center;justify-content:center}
.nav-icon svg,.search-icon svg{width:100%;height:100%;display:block}
.search-icon{width:18px;height:18px;display:inline-flex;flex:0 0 18px;color:var(--ink-soft)}
.search-field>span.search-icon{font-size:inherit}
.section-title{display:flex;align-items:center;gap:14px;margin-bottom:12px}
.section-title h2{margin:0}
.section-title img{width:56px;height:56px;object-fit:contain;border-radius:12px;background:var(--paper-deep);padding:4px}
@media(max-width:820px){nav button[data-view]{gap:7px}.section-title img{width:48px;height:48px}}
/* Marca kollektio: mesma construção do símbolo do kognitio, com trigo claro. */
:root{--kollektio-wheat:#e9dba9}
header h1{display:flex;align-items:center;gap:9px;line-height:1}
.kollektio-mark{width:44px;height:44px;display:inline-flex;align-items:flex-end;justify-content:center;flex:0 0 44px;overflow:hidden;border-radius:28%;background:var(--kollektio-wheat)}
header h1 .kollektio-mark img,.login-brand .kollektio-mark img{display:block;width:100%;height:100%;margin:0;object-fit:contain;object-position:center bottom}
.login-brand .kollektio-mark{width:48px;height:48px;flex-basis:48px}
@media(max-width:820px){header h1 .kollektio-mark{width:40px;height:40px;flex-basis:40px}}
/* Recepção: seletor acessível, sem expor o controle nativo. */
#receive .receive-divider{height:1px;background:var(--line);margin:30px 0 26px}
.receive-heading h3{margin:0 0 5px}.receive-heading p{margin:0 0 16px}
.receive-form{max-width:760px}.upload-panel{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;border:1px dashed var(--paper-line);border-radius:10px;background:var(--paper);min-width:0}
.upload-copy{display:flex;align-items:center;gap:13px;min-width:0}.upload-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;background:var(--paper-deep);border-radius:9px;color:var(--ink-soft)}.upload-icon svg{width:21px;height:21px}.upload-description{display:flex;flex-direction:column;gap:4px;min-width:0}.upload-description strong{font-size:.86rem}.upload-description span{color:var(--muted);font-size:.78rem;overflow-wrap:anywhere}.upload-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.upload-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.upload-select{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:9px 13px;border:1px solid var(--paper-line);border-radius:8px;background:#fff;color:var(--ink);font-size:.8rem;font-weight:600;cursor:pointer;white-space:nowrap}.upload-select:hover{background:var(--paper-deep)}.upload-input:focus-visible+.upload-select{outline:3px solid #7b7063;outline-offset:3px}.upload-actions button{min-height:40px}.receive-fields{display:flex;align-items:end;gap:12px;margin-top:18px}.receive-title-field{flex:1;min-width:0}.receive-title-field label{display:block;margin:0 0 7px;font-size:.8rem;font-weight:600}.receive-title-field label span{font-weight:400;color:var(--muted)}.receive-title-field input{width:100%}.receive-fields>button{min-height:42px;white-space:nowrap}
@media(max-width:560px){.upload-panel{align-items:flex-start;flex-direction:column}.upload-actions{width:100%}.receive-fields{align-items:stretch;flex-direction:column}.receive-fields>button{align-self:flex-start}}
